in my workspace i have an array that is named 'data' and I have a name field with some filename = 'filename'
I would like to rename the array called data to the name that is stored in the filename name variable.
simply doing filename = data; renames data to filename not the actual name that filename holds.

 Risposta accettata

Matt Tearle
Matt Tearle il 5 Mar 2012

2 voti

Let me see if I interpret the question correctly: you have
filename = 'bob';
data = [1,2,3];
And you want to rename data to bob (the contents of filename)?
Firstly, be careful doing things like this. It makes it very hard to track names. But, if you must...
str = [filename,'= data;'];
eval(str);

1 Commento

Walter Roberson
Walter Roberson il 5 Mar 2012
"if you must" then you probably have not written your program in a good way.
Baba, use dynamic structure field names of a single structure variable that will contain all of the data.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by