tableデータの変数名を割り当てる方法

34 visualizaciones (últimos 30 días)
s
s el 21 de Mzo. de 2023
Comentada: s el 21 de Mzo. de 2023
table型において、変数名を明示的に宣言せずに、割り当てて、table型の変数を作成する方法を教えていただきたいです。
x1 = 100;
x2 = 200;
table( x1, evalin( 'base' , "x2" ) )
ans = 1×2 table
x1 Var2 ___ ____ 100 200
この状態だと、tableの変数の中の「X2」の変数名は「Var2」となります。
「X2」の変数名を「X2」のままtable型に格納したい場合はどうすればいいでしょうか。
本来は
table( x1, x2 )
ans = 1×2 table
x1 x2 ___ ___ 100 200
とすればいいですが、変数名を自動化で割り当てたいと思っています。
何かいい方法があればご教示いただけますと助かります。
それとも、table型は明示的に変数名を宣言しないと、その変数名で値を格納できないのでしょうか。

Respuesta aceptada

Hernia Baby
Hernia Baby el 21 de Mzo. de 2023
x2の変数名を自動で割り当てたいということですね。
Variablenameオプションはいかがでしょうか?
例えば a, b を x1, x2 のようにしたいと考えたとします。
a = 100;
b = 200;
vnames = ["x1","x2"];
table(a,b,'VariableNames',vnames)
ans = 1×2 table
x1 x2 ___ ___ 100 200
  3 comentarios
Atsushi Ueno
Atsushi Ueno el 21 de Mzo. de 2023
Editada: Atsushi Ueno el 21 de Mzo. de 2023
おそらく自動化スクリプトが変数名の情報を持っていて下記の様に設定するのだと思いますが、
table( x1, evalin( 'base' , "x2" ) )
evalin 関数でなくても、eval 関数に直接変数名を書いても良いのではないかとも思いました。
eval(['table(',varname1,',',varname2,');']); % やり方次第で可変個数にもできる
s
s el 21 de Mzo. de 2023
ご回答ありがとうございます。おかげさまで解決できました。感謝いたします。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2023a

Community Treasure Hunt

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

Start Hunting!