save two variables using num2str
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I want to save two variables using num2str, but I get error. what is wrong with this?
x1=1;
y1=2;
ty_c=1;
pathdatasave = (['D:\testa\ty' num2str(ty_c) '\']);
save([pathdatasave 'test_x' num2str(x1) '_y' num2str(y1) '.mat'],['varx' num2str(x1) ,'vary' num2str(y1)]);
Antworten (1)
Stephen23
am 11 Jul. 2022
Bearbeitet: Stephen23
am 12 Jul. 2022
"what is wrong with this?"
- Forcing meta-data (pseudo-indices) into variable names, thus making your code slow and complex.
- Forcing code into one line, when clarity is actually more important (as this question demonstrates).
- Two variable names must be supplied as two inputs to SAVE (not concatenated together as you are doing):
x1=1;
y1=2;
varx1 = 33;
vary2 = 444;
P = '.';
F = fullfile(P,sprintf('test_x%d_y%d.mat',x1,y1));
N1 = sprintf('varx%d',x1);
N2 = sprintf('vary%d',y1);
save(F,N1,N2);
% ^^ ^^ two variable names == two inputs, not one like you did!
Checking:
whos -file test_x1_y2.mat
So, everything works exactly as documented and expected.
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!