converting 2d matrix to 3d
4 ビュー (過去 30 日間)
古いコメントを表示
Can anyone help me with making a 2D matrix into a 3D matrix?
I have a (71680 x 8) 2d matrix and I need to make a 3D matrix of dimensions (512 x 8 x 140) I need to take (512 x 8) consecutive matrices by row for 140 layers.
Can anyone help me with this? I really appreciate any help
0 件のコメント
採用された回答
Titus Edelhofer
2014 年 6 月 25 日
HI Joe,
if I'm not mistaken, it should be
permute(reshape(X, 512, 140, 8), [1 3 2]);
Titus
3 件のコメント
Titus Edelhofer
2014 年 6 月 25 日
Hi Joe,
thanks. Could you please accept the answer then so others know it's already answered?
Titus
その他の回答 (1 件)
amit
2016 年 10 月 3 日
permute(reshape(X, 512, 140, 8), [1 3 2]); what is [1 3 2] stands for?
1 件のコメント
Walter Roberson
2016 年 10 月 4 日
"B = permute(A,order) rearranges the dimensions of A so that they are in the order specified by the vector order"
In your case it would rearrange reshape(X, 512, 140, 8) to be 512 x 8 x 140 by rearranging the elements. What was previously indexed at location (I,J,K) would be at location (I,K,J) in the new array.
参考
カテゴリ
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!