how to make a variable name from a string
Show older comments
2013a version
>> test='eye'
>> value = [5,5,3]
value =
5 5 3
>> eval([sprintf(test) '= data+1']);
Index exceeds matrix dimensions.
How to fix this error? Thank you for helping!
Accepted Answer
More Answers (3)
xianghong
on 16 Aug 2013
0 votes
1 Comment
Walter Roberson
on 16 Aug 2013
No, it is not just for creating field names within a variable. It shows a number of different alternatives to creating a variable from a string, recommending strongly that you use one of the alternatives instead of creating a variable dynamically. At the end of the FAQ it shows how to create a variable dynamically, for the rare case when you really need to do that. If you are not engaged in creating extensions to MATLAB itself, chances are that there is a better route than creating a variable dynamically.
xianghong
on 16 Aug 2013
0 votes
2 Comments
Walter Roberson
on 16 Aug 2013
Please use the command
clear eval
and then try again
xianghong
on 19 Aug 2013
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!