NumPy numpy.transpose()的使用
numpy.transpose() 函数是矩阵乘法中最重要的函数之一。该函数重新排列或保留给定数组的维度,并返回修改后的数组。
numpy.transpose() 函数将行元素变为列元素,将列元素变为行元素。该函数的输出是原始数组的修改后的数组。
语法
numpy.transpose(arr, axis=None)
参数
arr:array_like
它是一个ndarray。它是我们想要转置的源数组。该参数是必需的,并在numpy.transpose()函数中发挥关键作用。
axis:List of ints()
如果我们没有指定轴,则默认情况下会翻转维度,否则根据给定的值重新排列轴。
返回值
该函数返回一个ndarray。输出数组是源数组,其轴已重新排列。尽可能返回一个视图。
示例1:numpy.transpose()
import numpy as np
a= np.arange(6).reshape((2,3))
a
b=np.transpose(a)
b
输出:
array([[0, 1, 2],
[3, 4, 5]])
array([[0, 3],
[1, 4],
[2, 5]])
在上面的代码中
- 我们使用别名np导入了numpy库。
- 我们使用np.arange()函数创建了一个数组’a’,并使用reshape()函数给出了一个形状。
- 我们声明了变量’b’并赋值了np.transpose()函数的返回值。
- 我们在函数中传递了数组’a’。
- 最后,我们尝试打印变量’b’的值。
输出中显示了原始数组的转置数组。
示例2:numpy.transpose()与轴
import numpy as np
a= np.array([[1, 2], [4, 5], [7, 8]])
a
b=np.transpose(a, (1,0))
b
输出:
array([[1, 2],
[4, 5],
[7, 8]])
array([[1, 4, 7],
[2, 5, 8]])
在上面的代码中
- 我们使用别名np导入了numpy。
- 我们使用np.array()函数创建了一个名为’a’的数组。
- 我们声明了变量’b’并将np.transpose()函数的返回值赋给了它。
- 我们在函数中传递了数组’a’和轴。
- 最后,我们尝试打印变量’b’的值。
在输出结果中,展示了原始数组的转置数组。
示例3:使用numpy.transpose()重新定位元素
import numpy as np
a=np.ones((12,32,123,64))
b=np.transpose(a,(1,3,0,2)).shape
b
c=np.transpose(a,(0,3,1,2)).shape
c
输出:
(32L, 64L, 12L, 123L)
(12L, 64L, 32L, 123L)
- 我们使用别名np导入了numpy。
- 我们使用np.ones()函数创建了一个数组’a’。
- 我们声明了变量’b’和’c’,并赋予了np.transpose()函数的返回值。
- 我们在函数中传递了数组’a’和数组元素的位置。
- 最后,我们尝试打印变量b和c的值。
在输出中,显示了一个数组,其元素位于数组中定义的位置处。