Transposing 3 D matrix using permute - how does permute work?
21 次查看(过去 30 天)
显示 更早的评论
Ok. So I see how to transpose all the "2D slices" of a 3D matrix on other answers (permute(A, [2 1 3])).
But what does the order vector mean? The 2 means what? The second row, column? Anyone who can explain this, I appreciate it.
Thanks
2 个评论
Javed mohd
2018-3-7
Hi, Order vector [1:first dim(row) 2:second dim(col) 3:third dim(Z)] so if you want to transpose rows and columns keeping the same Z, your vector would be [2 1 3]
采纳的回答
Walter Roberson
2012-1-24
It is the dimension number. In [2 1 3] it means that the second dimension of the original should become the first dimension of the new array, and the first dimension of the original should become the second dimension of the new array, and the third dimension of the original should stay where it is.
0 个评论
更多回答(2 个)
James Tursa
2012-1-25
Another way to do 2D slice transposing of an nD Array:
mtimesx(1,A,'t')
You can find mtimesx on the FEX here:
href=""<http://www.mathworks.com/matlabcentral/fileexchange/25977-mtimesx-fast-matrix-multiply-with-multi-dimensional-support</a>>
0 个评论
Ali
2012-1-24
2 个评论
Walter Roberson
2012-1-24
The third dimension has length 1, and it is left where it is, so the third dimension is 1 afterwards. Trailing 1's from the third dimension onward are not explicitly shown in MATLAB. An array which is 2x2 is also 2x2x1x1x1x1x1 but it would not serve any useful purpose to explicitly display the 250-some-odd trailing subscripts that are all exactly "1".
Andrew Newell
2012-1-24
Each doc page has an option for feedback at the bottom. If you answer "No" to "Was this topic helpful?", you'll get a web form to fill out.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!