How can use a for loop to name a matrix?
7 ビュー (過去 30 日間)
古いコメントを表示
After each iteration of my for loop, a matrix is produced. I want to name that matrix based on the number of the iteration. This is what I have so far:
for trials = 1:max_trials
a = int2str(trials);
a = output_matrix;
However, Matlab just stores the last matrix produced under the variable 'a'. How can I get it to store each matrix under its respective iteration? For example, if max_trials = 3, how would I get three separate matrices labelled '1', '2' and '3'?
Thank you!
1 件のコメント
採用された回答
その他の回答 (1 件)
David Young
2015 年 3 月 27 日
One way is to use a cell array, like this
for trials = 1:max_trials
< compute result, assign to a >
output_matrix{trials} = a;
end
Then output_matrix{k} is the value of the a matrix for iteration k.
Don't try to assign the result of each iteration to a different variable by constructing different names inside the loop - it's a very bad way to do it.
1 件のコメント
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!