numpy.array.T详解:高效获取数组转置的方法

numpy.array.T 是 numpy 数组对象的一个属性,用于获取该数组的转置(transpose)。当对一个多维数组调用 .T 方法时,其返回一个新的数组,其中轴(axes)的顺序被交换。具体来说:

对于二维数组(矩阵),转置会交换行(axis 0)与列(axis 1)。例如,如果 A 是一个 m x n 的矩阵,那么 A.T 将是一个 n x m 的矩阵,其中原矩阵 A 中第 i 行第 j 列的元素在转置后的矩阵 A.T 中位于第 j 行第 i 列。

对于更高维数组,转置不仅涉及轴0和轴1的交换,而是按照逆序重新排列所有轴。例如,对于一个三维数组 B 有形状 (x, y, z),其转置 B.T 将具有形状 (z, y, x)。

使用 .T 方法的优点在于它既简单又高效。它是数组的一个视图(view),即不复制数据,而是提供一个新索引来访问原始数据的不同排列。这意味着对大型数组进行转置操作时,不会显著增加内存消耗,且计算速度相对较快。

示例

import numpy as np

# 创建一个二维数组(矩阵)
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# 获取转置
transposed_matrix = matrix.T

print("Original matrix:")
print(matrix)
print("\nTransposed matrix:")
print(transposed_matrix)

输出

Original matrix:
[[1 2 3]
 [4 5 6]
 [7 8 9]]

Transposed matrix:
[[1 4 7]
 [2 5 8]
 [3 6 9]]

对于更高维数组,转置的效果类似,只是涉及的轴更多。例如,一个三维数组的转置会交换第一个轴(轴0)与第二个轴(轴1)的位置,同时保持第三个轴不变。

总之,np.array.T 是一个便捷的方法,用于快速、高效地获取 numpy 数组的转置,即轴顺序的交换。这对于线性代数运算、数据重塑以及其他需要改变数组维度间关系的操作非常有用。


存档地址:https://www.yuque.com/worthstudy/study/sg2wpfplyplkqkhv?singleDoc# 《numpy.array.T属性》

© 版权声明
THE END
喜欢就点赞支持一下吧,如果觉得不错或日后有所需要,可以收藏文章和关注作者哦。
点赞0打赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容