我熟悉用于交换轴的numpy.transpose命令。但我不熟悉镜像,它们是什么以及如何使用numpy.transpose命令生成镜像。以下链接说明当我们交换最后两个轴时,我们得到镜像。那么这里的镜像是什么意思。如果有人请用一些图片解释这个,我将非常感激
`a= np.arange(2*2*4).reshape(2,2,4)
b= np.transpose(a,(1,0,2))`
答案 0 :(得分:2)
In [54]: a= np.arange(2*3*4).reshape(3,2,4)
# | | |
# axes 0 1 2
# new shape by moving the axes
In [54]: b= np.transpose(a,(1,0,2))
In [55]: a.shape
Out[55]: (3, 2, 4)
# first two axes are swapped
In [56]: b.shape
Out[56]: (2, 3, 4)
默认情况下,np.transpose()
会反转形状。但是,当将参数传递给np.transpose()
时,如果可能,数组将被重新整形为所请求的形状。
说明:
在上面的示例中,np.transpose(a, (1, 0, 2))
表示在返回的数组b
中,将交换第0和第1轴。
具体来说,传递给np.transpose()
的元组是我们希望结果数组具有形状的顺序。
在转置前(左)和转置后(右)绘制图像: