Undefined function or variable when using load and trying to operate with variables
Mostrar comentarios más antiguos
Hi: I have posted before asking one question and I didn't really explain myself correctly so not ALL my question was solved: I have a function which saves some variables each time with a different name in the form of a matrix (30x30). This variables are called Z_1,Z_2,Z_3,etc...
save(['Z_' num2str(v)],'z')
Now I want to add these variables which I have created (Z_1,Z_2,etc) so that it gives me a matrix (30x30) called TotalZ for example. This would be done easily enough using:
load('C\wherever.the.variable.is.stored\Z_1');
load('C\wherever.the.variable.is.stored\Z_2');
load('C\wherever.the.variable.is.stored\Z_3');
TotalZ=Z_1+Z_2+Z_3;
But every time I try running this I get the error;
??? Undefined function or variable 'Z_1'.
Error in ==> mapa at 31
TotZ=Z_1+Z_2+Z_3
I am getting a bit frustated as I have clearly defined my variables and loaded them properly (or so I think) so I see no reason for this error. The idea would then be to plot the TotalZ against two variables with a pcolor plot.
Thanks for any help. Guillermo
1 comentario
Guillermo Lopez
el 26 de Abr. de 2012
Respuesta aceptada
Más respuestas (1)
Honglei Chen
el 26 de Abr. de 2012
The first variable in save is the file name, not the variable name. So in each of your files, the variable name is still z. Therefore, after you load all the files, there is still only one z. To do what you want, you need to save those files using different variable name z1,|z2|,... or you load them to a variable like this
load('C\wherever.the.variable.is.stored\Z_1');
Z_1 = z;
load('C\wherever.the.variable.is.stored\Z_2');
Z_2 = z;
load('C\wherever.the.variable.is.stored\Z_3');
Z_3 = z;
TotalZ=Z_1+Z_2+Z_3;
4 comentarios
Guillermo Lopez
el 26 de Abr. de 2012
Walter Roberson
el 26 de Abr. de 2012
Dynamic structure field names, and save() with the -struct option.
Honglei Chen
el 26 de Abr. de 2012
eval(['Z_' num2str(v) '=z']);
save(['Z_' num2str(v)],['Z_' num2str(v)])
Walter Roberson
el 26 de Abr. de 2012
Using eval() is not recommended!!
Categorías
Más información sobre Variables 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!