Calling a variable from a variable
26 ビュー (過去 30 日間)
古いコメントを表示
e.g With variables:
a b c d
V = who;
Now:
V (2) = b
b(1) = 3000 (for example)
I would like to call variable b using the newly created variable V:
e.g something like [V(2)](1) = 3000
I'm not sure where to start tbh
any help would be great,
thanks in advance,
Matt
0 件のコメント
採用された回答
その他の回答 (3 件)
Richard
2011 年 6 月 13 日
These kind of situations are best handled by storing the original data in a variable type that is designed to map strings to data. The simplest option is to use a structure which supports indexing with a string variable:
s.a = 1;
s.b = 2;
s.c = 3;
s.d = 4;
V = 'b';
s.(V) = 3000;
In some situations, you might want to look at the containers.Map object.
0 件のコメント
Matt Fig
2011 年 6 月 13 日
I don't understand why you would want to do this, but here is a way to automate it.
clear all % Fresh start...
a = [1 2 3];
b = [4 5 6];
save myvars
N = who;
V = load('myvars')
V.(N{1})(3) % Returns a(3)
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!