2014-12-04 59 views
7

我有3×3×2的矩陣,例如:Matlab的 - 僅在第三維度移調一個3D矩陣

M(:,:,1) = 
    1  2  3 
    4  5  6 
    7  8  9 

M(:,:,2) = 
    10 11 12 
    13 14 15 
    16 17 18 

和我想轉每M(:,:,i),我的意思是我想有:

M(:,:,1) = 
    1  4  7 
    2  5  8 
    3  6  9 

M(:,:,2) = 
    10 13 16 
    11 14 17 
    12 15 18 

怎麼可能沒有循環做到這一點? 非常感謝!

回答

11

這就是permute做:

result = permute(M, [2 1 3]); %// swap dimensions 1 and 2 
+1

這是第一個技巧我從你身上學到的一個。 +1。 – rayryeng 2014-12-04 18:34:34

+0

非常不錯... + 1 – Rashid 2014-12-04 21:27:58