How to load data without reloading?
Mostrar comentarios más antiguos
I would like to load variables from a .mat file, but just those ones which are not loaded before. It is possible not overwrite the variables?
1 comentario
per isakson
el 27 de Oct. de 2015
Editada: per isakson
el 27 de Oct. de 2015
Respuestas (1)
Chad Greene
el 27 de Oct. de 2015
As I understand it, you have some variables in your workspace, let's call them x and y. You want to load some test.mat file that has variables x and y in them. You can do
x = 1;
y = 2;
t = load('test.mat');
x2 = t.x;
y2 = t.y;
3 comentarios
Mr M.
el 27 de Oct. de 2015
Chad Greene
el 27 de Oct. de 2015
You can try
m = matfile('test.mat');
w = who(m);
to the get names of the variables in test.mat.
Chad Greene
el 27 de Oct. de 2015
Or, putting it all together, if test.mat contains a variable named x, load it:
if any(strcmpi(who(matfile('test.mat')),'x'))
x = load('test.mat','x');
end
Similarly, you could compare the variables in test.mat to the variables in your workspace using ismember with who.
Categorías
Más información sobre Whos en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!