How do I create variable names from string variables
Ältere Kommentare anzeigen
If I have 2 variables, ID has a column of strings like 'height' or 'speed', data has a column of corresponding variables.
ie
ID = 'height' 'height' 'height' 'speed' 'speed'
data = 10;10;7;2.4;2.1
How do I create the variable 'height' and a variable speed with the corresponding data.
ie
height = 10;10;7
speed = 2.4;2.1
Akzeptierte Antwort
Weitere Antworten (1)
Andrei Bobrov
am 13 Aug. 2013
Bearbeitet: Andrei Bobrov
am 13 Aug. 2013
ID = {'height' 'height' 'height' 'speed' 'speed'};
data = [10;10;7;2.4;2.1];
[i0,i1,i1] = unique(ID);
vars = cell2struct(accumarray(i1(:),data(:),[],@(x){x}),i0,1);
1 Kommentar
Matt Kindig
am 15 Aug. 2013
I should have figured there was an easy way to do this using accumarray. Try as I might, I still can't get the hang of that function.
Kategorien
Mehr zu Structures finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!