How to create variable names

1 view (last 30 days)
Avishka Karunaratne
Avishka Karunaratne on 18 Feb 2016
Answered: Bob Thompson on 27 Jun 2019
for i = 1:10
Si = Example(i,:)
end
So I have this line of code and I want answers S1, S2, S3, S4 etc, however I only get Si for every answer and if i replace Si with S(i) or S{i} the code doesn't work , so how can I fix this ?
  1 Comment
Stephen23
Stephen23 on 18 Feb 2016
Edited: Stephen23 on 27 Jun 2019
Your code will be much simpler, more reliable, and much more efficient if you just use indexing into one variable instead of trying to create lots of separate variables.

Sign in to comment.

Answers (1)

Bob Thompson
Bob Thompson on 27 Jun 2019
I'm not sure why this got resurrected more than three years later, but I guess I might as well put an answer on it, for future searchers.
To the best of my knowledge, it is not possible to dynamically create variable names in Matlab. Ultimately this is a good thing though, because Stephen's comment is correct that the code will be better if variables are indexed into arrays, rather than large groups of individually named variables. Matrices, afterall, are what Matlab was created to work with.

Community Treasure Hunt

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

Start Hunting!