フィルターのクリア

save matrices of the sequential names in cell array

1 回表示 (過去 30 日間)
abbas hasan
abbas hasan 2014 年 9 月 5 日
コメント済み: abbas hasan 2014 年 9 月 5 日
hi all,
i have question about matrices of the sequential names in cell array with for loop, the matrices named like this A1,A2,A3,....... and so on.
i used this code
for i = 1:5 eval(['A' num2str(i) '=i*ones(2*i,2*i)']); C{i}=(['A', num2str(i)]); end
but i get in the cell only the char of matrix with out the value inside it.
i will be grateful to any help.

採用された回答

Michael Haderlein
Michael Haderlein 2014 年 9 月 5 日
Why everybody wants to put the index into the variable name? That's exactly how you not profit from Matlab's strengths.
I guess you want to have something like
A=cellfun(@(x) x*ones(2*x),num2cell(1:5),'uniform',false);
  1 件のコメント
abbas hasan
abbas hasan 2014 年 9 月 5 日
thanks a lot, thanks a lot , this function work fine.

サインインしてコメントする。

その他の回答 (1 件)

Iain
Iain 2014 年 9 月 5 日
Why not just use cell arrays?
for i =1:5
A{i} = i*ones(2*i,2*i);
C{i} = A{i};
end
But if you insist on using eval,
eval(['C{i} = A' num2str(i) ';']) or...
C{i} = eval(['A' num2str(i) ';'])

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by