The save command stores variables into a file with .mat extension.
The load command reads variables back into the workspace.
Examples
This saves variables a and b into mydata.mat.
MATLAB
a = 5;
b = [1, 2, 3];
save('mydata.mat', 'a', 'b')
This clears variables and then loads them back from the file.
MATLAB
clear a b
load('mydata.mat')
This saves all workspace variables into allvars.mat.
MATLAB
save('allvars.mat')
This loads the file into a structure data and accesses variable a.
MATLAB
data = load('mydata.mat');
a = data.a;
Sample Program
This program saves variables x and y to a file, clears them from memory, then loads them back and displays their values.
MATLAB
x = 10;
y = [4, 5, 6];
save('example.mat', 'x', 'y')
clear x y
load('example.mat')
disp(x)
disp(y)
OutputSuccess
Important Notes
If you save without specifying variables, MATLAB saves all workspace variables.
Loading a MAT file restores variables with their original names.
You can also load into a structure to avoid overwriting existing variables.
Summary
Use save to store variables in a MAT file.
Use load to bring variables back into your workspace.
This helps keep your data safe and reuse it anytime.
Practice
(1/5)
1. What does the MATLAB command save('data.mat', 'x') do?
easy
A. Saves the variable x to a file named data.mat.
B. Loads the variable x from the file data.mat.
C. Deletes the variable x from the workspace.
D. Creates a new variable x with the name data.mat.
Solution
Step 1: Understand the save command
The save command stores variables from the workspace into a MAT file.
Step 2: Analyze the given command
save('data.mat', 'x') saves the variable x into the file named data.mat.
Final Answer:
Saves the variable x to a file named data.mat. -> Option A
Quick Check:
save stores variables [OK]
Hint: Remember: save stores, load retrieves variables [OK]
Common Mistakes:
Confusing save with load command
Thinking save deletes variables
Assuming save creates variables
2. Which of the following is the correct syntax to load variables from a MAT file named results.mat?
easy
A. load('results.mat'); save;
B. load results.mat;
C. load = 'results.mat';
D. load('results.mat');
Solution
Step 1: Recall the syntax for loading MAT files
The correct syntax to load variables from a MAT file is load('filename.mat').
Step 2: Check each option
load('results.mat'); uses parentheses and quotes correctly: load('results.mat');. load results.mat; misses quotes, which causes an error. load = 'results.mat'; assigns a string to load, which is invalid. load('results.mat'); save; mixes load and save incorrectly.
Final Answer:
load('results.mat'); -> Option D
Quick Check:
Use parentheses and quotes with load [OK]
Hint: Use load('filename.mat') with quotes and parentheses [OK]
Common Mistakes:
Omitting quotes around filename
Using assignment instead of function call
Mixing save and load commands
3. Consider the following MATLAB code:
x = 10; y = 20; save('mydata.mat', 'x'); clear; load('mydata.mat'); disp(y);
What will be the output?
medium
A. Error: Undefined function or variable 'y'.
B. 20
C. 10
D. No output
Solution
Step 1: Understand the save and clear commands
The command save('mydata.mat', 'x') saves only variable x. The clear command removes all variables from workspace.
Step 2: Analyze the load and disp commands
After load('mydata.mat'), only x is restored. Variable y is not loaded. So, disp(y) causes an error because y is undefined.
Final Answer:
Error: Undefined function or variable 'y'. -> Option A
Quick Check:
Only saved variables load back [OK]
Hint: Only saved variables are loaded back, others cause errors [OK]
Common Mistakes:
Assuming all variables are saved by default
Expecting cleared variables to still exist
Confusing variable names in load
4. You run this MATLAB code:
save('data.mat', 'a', 'b') clear a b load('data.mat')
But after loading, variables a and b are missing. What is the likely problem?
medium
A. The clear command syntax is incorrect.
B. Variables a and b were never created before saving.
C. The load command is missing output arguments.
D. The file data.mat was not saved properly.
Solution
Step 1: Check if variables exist before saving
If variables a and b do not exist before save, nothing is saved.
Step 2: Understand clear and load behavior
clear a b removes variables a and b. Loading data.mat restores only saved variables. If none were saved, nothing loads.
Final Answer:
Variables a and b were never created before saving. -> Option B
Quick Check:
Save only stores existing variables [OK]
Hint: Create variables before saving to store them [OK]
Common Mistakes:
Trying to save variables that don't exist
Misusing clear command syntax
Expecting load to create variables
5. You want to save multiple variables a, b, and c into a MAT file, but only if a is greater than 10. Which MATLAB code correctly does this?
hard
A. if a > 10
save('file.mat', 'a', 'b', 'c');
end
B. save('file.mat', 'a', 'b', 'c') if a > 10;
C. if (a > 10) save('file.mat', 'a', 'b', 'c'); end
D. save('file.mat', 'a', 'b', 'c') && (a > 10);
Solution
Step 1: Understand MATLAB if statement syntax
MATLAB uses if condition ... end blocks. The condition must be on its own line or followed by a newline.
Step 2: Check each option's syntax
if (a > 10) save('file.mat', 'a', 'b', 'c'); end uses correct one-line if syntax with parentheses and semicolon. save('file.mat', 'a', 'b', 'c') if a > 10; uses invalid inline syntax. if a > 10
save('file.mat', 'a', 'b', 'c');
end uses multiline if syntax but with newline characters which may not be valid in all contexts. save('file.mat', 'a', 'b', 'c') && (a > 10); uses invalid logical operator syntax.
Final Answer:
if (a > 10) save('file.mat', 'a', 'b', 'c'); end -> Option C
Quick Check:
Use proper if-end blocks or one-line if syntax in MATLAB [OK]
Hint: Use if ... end blocks or one-line if syntax for conditional save [OK]
Common Mistakes:
Using invalid inline if syntax
Mixing logical operators with commands
Omitting end for if block
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.