Numpy transpose是一个用于矩阵转置的函数,将矩阵的行和列互换。其作用是将二维数组中的行列位置对调,这对于矩阵数据处理时尤为重要。
使用方法:
numpy.transpose(arr, axes=None)
其中,arr表示待处理的数组,axes表示对数组的进行操作的维度,如果axes未指定,会对整个数组进行转置操作。
下面分别给出两个实例:
import numpy as np
a = np.array([[1, 2], [3, 4]])
print("原矩阵: ")
print(a)
b = np.transpose(a)
print("转置后的矩阵: ")
print(b)
输出结果:
原矩阵:
[[1 2]
[3 4]]
转置后的矩阵:
[[1 3]
[2 4]]
import numpy as np
a = np.arange(24).reshape(2, 3, 4)
print("原数组: ")
print(a)
b = np.transpose(a, (1, 0, 2))
print("转置后的数组: ")
print(b)
输出结果:
原数组:
[[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]]
转置后的数组:
[[[ 0 1 2 3]
[12 13 14 15]]
[[ 4 5 6 7]
[16 17 18 19]]
[[ 8 9 10 11]
[20 21 22 23]]]
在上面的代码中,我们将原始的数组a转换为一个2x3x4的三维数组。
当我们在执行转置操作时,使用了axes参数指定了维度的操作顺序,这里的含义是先对第一个维度进行操作,再对第二个维度进行操作,最后对第三个维度进行操作。
因此,转换后的数组b中的第一个维度变成了原数组中的第二个维度,第二个维度变成了第一个维度,第三个维度不变。这就实现了高维数组的转置。
本文链接:http://task.lmcjl.com/news/17053.html