Matrix variable manipulation

9 vues (au cours des 30 derniers jours)
Elin
Elin le 10 Avr 2011
Hi,
I have a 3x1 string vector and a 3 by 3x3 matrix with values,
A= ['AAA';'BBB';'CCC'] B=[1 2 3;1 2 3;1 2 3]
what code can I use to create 3 new variables out of my string vector and assign them values from my matrix.
so that the result looks like this
AAA= [1;1;1] BBB= [2;2;2] CCC= [3;3;3]

Réponse acceptée

the cyclist
the cyclist le 10 Avr 2011
You can use the "eval" command to do this:
A= ['AAA';'BBB';'CCC']
B=[1 2 3;1 2 3;1 2 3]
for ii = 1:3
eval([A(ii,:),'=B(:,',num2str(ii),')'])
end
If this is "real" code, as opposed to a school assignment, then this is almost certainly a poor approach to what you are trying to do. You might want to investigate "cell arrays".

Plus de réponses (1)

Walter Roberson
Walter Roberson le 10 Avr 2011

Catégories

En savoir plus sur Variables dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by