高维数组的转置使用permute函数
具体调用语法
B = permute(A,order)
按照向量order指定的顺序重排A的各维。B中元素和A中元素完全相同。但由于经过重新排列,在A、B访问同一个元素使用的下标就不一样了。order中的元素必须各不相同。
例子
>> A=rand(4,5,6);
>> size(A)
ans =
4 5 6
>> B = permute(A,[2 1 3]);
>> size(B)
ans =
5 4 6
原来A是4x5x6的矩阵
按照顺序[2 1 3]转置之后,原来的第一,第二维顺序改变
B的大小是5x4x6
有点不太明白你的意思,数学上并没有定义三维数组转置这种运算吧
从你后面的命令来看是想改变三个维度的顺序,不知道这样理解是否正确,如果是的话,试一下下面的命令:
temp=shiftdim(temp,1);