2017-09-24 9 views
0

私は、同じサイズの行列の未知の数のテーブルを作成したいと思いますので、私はこのようにそれを行うことはできません。Matlab - どのように同じサイズの行列の不明な数のテーブルを作成するには?

table1 = table(zeros([5,5]),zeros([5,5]),zeros([5,5]), 'VariableNames', {'matrix1','matrix2','matrix3'}); 

しかし、ここで私が作る方法を見つけることができないですので、私はこだわっていますこれはゼロをリストすることなく([5,5])n回、ここで何がnなのかわからないので、何とかそれをコード化しなければならなかった。

ところで、私はあまりにも、前の例のように設定された変数名を持っている必要がありますが、それのための文字列配列を作ることは問題ではありません:)

ありがとうございました:)

答えて

0

T1に最初のテーブル(対応を考えますmatrix1にあなたの例では)、T2秒台(matrix1)とすぐに、あなたは、単にテーブルの要素をこのように連結することができます:

final_table=[T1 T2 ...] 

...の意味nコンポーネントのセットを考えると、他のコンポーネント

よ、あなたはそれらを連結してループを書くことができます。

可能implementatioinは次のようになります。このことができます

% Define the names of the components 
t_names{1}='matrix1' 
t_names{2}='matrix2' 
t_names{3}='matrix3' 
t_names{4}='matrix4' 
% Get the number of the components 
n=length(t_names) 
% Initialize the final table 
the_table=table 
% Loop over the components to add them to the final table 
for i=1:n 
    the_table=[the_table table(zeros([5,5]),'VariableNames', t_names(i))] 
end 

希望、

Qapla」

+0

はどうもありがとうございました私はあなたの答えを受け入れてきたので、それも良い解決策です。しかしMathworks社に私ははるかに簡単な解決策を得たので、私は、誰もが必要な場合は、あまりにもそれをここに投稿したいこと: '引数=セル(1、n)は、 args(:)= {ゼロ([5,5])}; table1 = table(args {:}); ' –

関連する問題