Is there a load if statement or similar in matlab, way to save workspace variable's seperate mat files?

2 vues (au cours des 30 derniers jours)
I want to only load a mat file if it isn't loaded. Is there a way to tell if it is loaded?
Is there a way to store every workspace variable as its own mat file by chance?

Réponse acceptée

Jan
Jan le 13 Mar 2012
This creates a list of currently defined variables:
List = who;
Then omit ans:
List(strcmp(List, 'ans')) = [];
And save the others:
for k = 1:length(List)
save(List{k});
end
Then this bunch of files can be loaded without overwriting existing variables:
matList = dir('*.mat');
List = who;
for k = 1:length(matList)
name = matList(k).name;
if ~any(strcmp(name, List))
load(name);
end
end
But I would avoid this consequently: 1. load without catching the input to a variable is prone to errors. 2. The debugging of your program will be impeded by this method, because it conceals the source of the values.

Plus de réponses (0)

Catégories

En savoir plus sur Variables dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by