Storing Multiple Matrices from a For Loop
81 ビュー (過去 30 日間)
古いコメントを表示
How do I index and store multiple matrices as a run through a for loop? For instance, I generate a 10x10 matrix the first time through and I want to store this result for access later before proceeding to the next matrix generation.
0 件のコメント
採用された回答
Cedric
2013 年 4 月 7 日
編集済み: Cedric
2013 年 4 月 7 日
You can use a cell array, e.g
n = 10 ;
M = cell(n, 1) ;
for k = 1 : n
M{k} = 20*k + rand(10) ;
end
you can see that each
M{1}, M{2}, etc
is a the 10x10 matrix defined at a specific iteration of the loop.
Note the difference between regular block indexing with () and accessing cells content with {}:
M(1)
is cell #1 of the cell array M, whereas
M{1}
is the content of cell #1 (in the present case, it is a 10x10 matrix).
15 件のコメント
Bryan Guilcapi
2022 年 7 月 20 日
Hi, i have a question, is possible to plot all this cell in one plot calling the data that are inside of the cell?
その他の回答 (2 件)
Saeed Bello
2017 年 8 月 7 日
You can use a three-dimensional matrix e.g.
for i = 1:8 % no. of iteration
S(:, :, i) = myfunx(i,10); % 10 x 10 output
end
Then you can access each iteration by calling S(:, : , 1) or S(:, : , 2) or S(:, : , 3) and so on. Source:https://stackoverflow.com/questions/30036908/output-of-for-loop-as-a-matrix-matlab
3 件のコメント
rees adah
2018 年 10 月 31 日
I also have a similar problem but this solution didn't work for me.i intend to store the matrices coming from a nested for loop into a multidimensional array and reference it later...how do I do that please?
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!