2017-05-02 20 views
-1

Matlabコマンドで次のことを行うことはできますか? セルの内容をシンボリック変数のラベルとして使用

a = 'c1Tl'; 

クラス(a)細胞を返しますと仮定。

私は

c1Tl = 3; 

を行うことができ、セル変数としてのコンテンツを使用するにはどうすればよい

私は「A」の内容に変数を割り当てることが

sym(a) = 3; 

を使用しようとするが、それは私の目的ではありません。 私の問題を解決するのを助けてください! ありがとうございました!

+1

動的変数の命名があるとして、あなたは本当に[悪い、非常に悪い]、これらの変数をしたくない(http://stackoverflow.com/questions/32467029/how-to-:あなたはこのような何かをするだろうこれらの画像を一緒に置く/ 32467170#32467170)。 – Adriaan

+0

私の目的は、ロードするオブジェクトがたくさんあるので、ロード後にオブジェクトを格納できるスクリプトです。オブジェクトは後で使用されます。私がそうしなければ、多くの変数名を手動で生成しなければなりません。 – greenworld

+0

重複は表示されません。構造体データ型を使用するだけです。あなたが受け入れた(そしてうまくいけばそれを使用する)答えは、動的に名前のついた変数を使用しません。ただ構造にこだわるだけです。 – Adriaan

答えて

0

これを行う最善の方法は、構造体データ型を使用することです。

a = {'c1Tl'}; 
%Lets make a struct called data which will store the values 
data.(a{1}) = 3; % The a{1} accesses the string stored in a and uses it to make a field in the structure data 
%To access your data, now you can use 
data.c1Tl 
+0

私の目的は、ロードするオブジェクトがたくさんあるので、ロード後にオブジェクトを格納できるスクリプトになります。オブジェクトは後で使用されます。私がそうしなければ、多くの変数名を手動で生成しなければなりません。 – greenworld