📜  转置矩阵 numpy (1)

📅  最后修改于: 2023-12-03 15:12:16.120000             🧑  作者: Mango

转置矩阵 numpy

在numpy中,转置是一种行与列互换的操作,即将一个矩阵的所有行变成对应的列,所有列变成对应的行。numpy中提供了简单的方法来计算矩阵转置,即使用transpose函数或T属性。本文将介绍numpy中如何使用这两种方式进行矩阵转置。

numpy.transpose 函数

numpy.transpose函数可以接受一个数组,并返回该数组的转置矩阵。

示例代码:

import numpy as np

arr = np.array([[1, 2], [3, 4]])
transpose_arr = np.transpose(arr)

print("Original array:")
print(arr)

print("\nTransposed array:")
print(transpose_arr)

输出:

Original array:
[[1 2]
 [3 4]]

Transposed array:
[[1 3]
 [2 4]]

在上面的示例中,我们定义了一个二维数组arr,并使用numpy.transpose函数计算其转置矩阵transpose_arr。

numpy.ndarray.T 属性

在numpy中,每个ndarray对象都具有一个T属性,返回该数组的转置矩阵。与transpose方法类似,T属性实际上返回了一个视图,而不是创建了一个新的数组。

示例代码:

import numpy as np

arr = np.array([[1, 2], [3, 4]])
transpose_arr = arr.T

print("Original array:")
print(arr)

print("\nTransposed array:")
print(transpose_arr)

输出:

Original array:
[[1 2]
 [3 4]]

Transposed array:
[[1 3]
 [2 4]]

这里我们使用T属性计算了arr的转置矩阵。注意,T属性返回的是arr的视图,而不是创建了一个新数组。因此,修改数组arr也会同时修改其转置矩阵。

总结

numpy中提供了两个简单的方法来计算矩阵的转置: transpose函数和T属性。在大多数情况下,这两种方法的结果是相同的,但在一些特殊情况下,它们的表现可能略有不同。在工作中,您可以根据实际需要选择合适的方式来计算矩阵的转置。