For Loop with strings

I am dealing with n vectors which represent the values of a variable along time. Each of them is characterized by a code which can be both numerical and text. For example Y_23 and Y_FIRE. I have to make some computations for each of them, for instance: beta_23 = Y_23^2. I was thinking about indexing the variables or making a for loop with string vectors. Anybody may help me please? Thanks in advance.

2 Commenti

Stephen23
Stephen23 il 27 Giu 2017
"I was thinking about indexing the variables"
That is a good idea. You should do that.
"or making a for loop with string vectors"
That is most likely a bad idea, because accessing variables from strings is slow, buggy, hard to debug, hard to read... and is strongly discouraged:
Although indexing is likely the best option, another option would be for you to put all of your data into a structure, then you can simply access and pass any of those values by using the fieldnames.
Edoardo Briganti
Edoardo Briganti il 27 Giu 2017
Thanks for your help Stephen. I will follow your advice.
Have a nice day.

Accedi per commentare.

Risposte (1)

Pratik Anand
Pratik Anand il 17 Lug 2017

0 voti

Adding Stephen Cobeldick 's suggestion here so that it is visible as an answer rather than a comment.
"I was thinking about indexing the variables"
That is a good idea. You should do that.
"or making a for loop with string vectors"
That is most likely a bad idea, because accessing variables from strings is slow, buggy, hard to debug, hard to read... and is strongly discouraged:
Although indexing is likely the best option, another option would be for you to put all of your data into a structure, then you can simply access and pass any of those values by using the fieldnames.

Richiesto:

il 27 Giu 2017

Risposto:

il 17 Lug 2017

Community Treasure Hunt

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

Start Hunting!

Translated by