How to save two matrices A and B in single .mat file using a loop (A and B changes for each operations)?

35 vues (au cours des 30 derniers jours)
I have two matrices A and B. every time these matrics changes with some operations on image. So I would like to save them in a single .mat file using a loop, so that each .mat file will be saved in different name. now I want to load 1) .mat file using a loop 2) from .mat file I need to load A and B matrices separately for next operations.
how to do that? in other words how to save workspace in a loop and load them back using a loop?

Réponses (1)

the cyclist
the cyclist le 24 Nov 2017
Modifié(e) : the cyclist le 24 Nov 2017
Here is one way:
for i = 1:3
A = rand(4);
B = rand(5);
filename = ['file',sprintf('%d',i),'.mat'];
save(filename,'A','B')
end
This will save each of the newly created A and B into files named "file1.mat", etc.
Unless A and B are prohibitively large, perhaps a better way to do this would be to save your matrices into cell arrays, and save the cell array:
for i = 1:3
A{i} = rand(4);
B{i} = rand(5);
end
save('file.mat','A','B')

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by