Python numpy.transpose使用详解

  

非常感谢您对于Python numpy.transpose使用的关注。下面是详细讲解的攻略。

Python numpy.transpose使用详解

概述

numpy.transpose() 函数用于对换数组的维度。对于一维数组,它就是将原数组翻转。对于二维数组,就是执行矩阵转置的操作。更高维度的数组操作,是基于这两个维度的操作,多次使用transpose()函数实现的。

numpy.transpose(arr, axes)函数参数:
- arr:要转换的数组
- axes:整数列表,对应于要转换的维度。例如,对于一个二维数组,可以使用 axes=[1,0] 将第0轴和第1轴互换。

使用示例

示例一:一维数组

例如,我们有一个数组a:

a = np.array([[0, 1], [2, 3]])

可以使用transpose()函数实现一维数组的翻转:

b = np.transpose(a)

输出结果为:

array([[0, 2],
       [1, 3]])

示例二:二维数组

对于一个二维数组,transpose()方法可以用于矩阵转置的操作:

a = np.array([[0, 1], [2, 3], [4, 5]])

此时我们创建了一个3行2列的二维数组a,我们可以使用transpose()将它转换成2行3列的数组:

b = np.transpose(a)

输出结果为:

array([[0, 2, 4],
       [1, 3, 5]])

示例三:高维数组

transpose()函数也可以用于操作更高维度的数组,例如对于3维矩阵:

a = np.arange(24).reshape(2,3,4)

此时我们创建了一个2x3x4的3维数组a,我们可以使用transpose()将它转换成2x4x3的数组:

b = np.transpose(a, (0, 2, 1))

输出结果为:

array([[[ 0,  4,  8],
        [ 1,  5,  9],
        [ 2,  6, 10],
        [ 3,  7, 11]],

       [[12, 16, 20],
        [13, 17, 21],
        [14, 18, 22],
        [15, 19, 23]]])

关于transpose()的更多使用场景和示例,可以参考numpy官方文档:https://numpy.org/doc/stable/reference/generated/numpy.transpose.html

相关文章