Hi:
I have various variables in the workspace: january_ns=1, february_ns=2, march_ns=3,.... Also I have an array like this: month={january february march }
I would like to show the content of the variable january_ns for example but using the array to show it.
To write month{1}_ns instead january_ns to show the value 1, for example.
I was trying with the next line, but it didnt work.
([month{1},'_ns',''])
Any idea to do that? Thanks.

 Akzeptierte Antwort

Anthony
Anthony am 18 Okt. 2013

0 Stimmen

january_ns=1, february_ns=2, march_ns=3
month={'january' 'february' 'march' };
eval([month{1},'_ns'])

2 Kommentare

jose bernardo
jose bernardo am 18 Okt. 2013
Thank you Anthony, It works perfectly.
Saludos!
Jan
Jan am 18 Okt. 2013
@jose: It might work now, but Azzi's suggestion shows a much better strategy.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Azzi Abdelmalek
Azzi Abdelmalek am 18 Okt. 2013
Bearbeitet: Azzi Abdelmalek am 18 Okt. 2013

2 Stimmen

month={'january' 'february' 'march' }
month{1}
month{2}
% You don't need to create a variable january_ns. Can you explain why you want to create these variables?

4 Kommentare

jose bernardo
jose bernardo am 18 Okt. 2013
Thank you Azzi.
The variables with the sufix 'ns' were all in the workspace, and I needed to do a loop with them, but not all, only the variables that appeared in the array (imported from excel).
But with the command "eval" do all ok.
Un saludo.
Jan
Jan am 18 Okt. 2013
+1: This solution is much better than the eval approach. It is a bad programming practice to store important information in the name of variables, because carrying values is a job for the contents of a variable, not for the name!
Anthony
Anthony am 19 Okt. 2013
Bearbeitet: Anthony am 19 Okt. 2013
no doubt that it is not advisable to use 'eval' , well, in most cases. (just give what is closest to the code you describe without knowing what/why you want to do. not intend to teach any coding habit :P)

Melden Sie sich an, um zu kommentieren.

Kategorien

Gefragt:

am 18 Okt. 2013

Kommentiert:

am 19 Okt. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by