我有一个尺寸为(2、3、4、5)的数组。
当我做np.transpose(a, (0, 3, 2, 1))
时,我得到形状为(2,5,4,3)的预期结果。
但是当我做np.transpose(a, (0, 3, 1, 2))
时,我期望得到形状为(2,4,5,3)的结果,但是我的形状却是(2,5,3,4)... < / p>
这是怎么回事?
答案 0 :(得分:3)
尺寸:
0:2
1:3
2:4
3:5
第一个转置(0,3,2,1)-> dims = [2,5,4,3]
第二个转置(0,3,1,2)-> dims = [2,5,3,4]
正在发生的事情是numpy正在执行任务,您只是在输入错误的形状,您想要的是np.transpose(a, (0, 2, 3, 1))