详解Numpy数组转置的三种方法T、transpose、swapaxes
Numpy是高性能科学计算和数据分析的基础包,里面包含了许多对数组进行快速运算的标准数学函数,掌握这些方法,能摆脱数据处理时的循环。
1.首先数组转置(T)
创建二维数组data如下:
进行矩阵运算时,经常要用数组转置,比如计算矩阵内积X^T X.这时就需要利用数组转置,如下:
2.轴对换之transpose
对于高维数组,可以使用轴对换来对多个维度进行变换。
这里创建了一个三维数组,各维度大小分别为2,3,4。
transpose进行的操作其实是将各个维度重置,原来(2,3,4)对应的是(0,1,2)。使用transpose(1,0,2)后,各个维度大小变为(3,2,4),其实就是将第一维和第二维互换。
对于这个三维数组,转置T其实就等价于transpose(2,1,0),如下:
3.两轴对换swapaxes:swapaxes方法接受的参数是一对轴编号,使用transpose方法是对整个轴进行对换,而swapaxes是将参数的两个轴进行对换。刚刚上面的transpose(1,0,2),实际上就是将0和1轴进行对换,因此使用swapaxes也可以实现,如下:
上面就是Numpy包里面进行数组转置和轴对换最常用的方法。
上一篇:在Python3中初学者应会的一些基本的提升效率的小技巧
栏 目:Python代码
本文标题:详解Numpy数组转置的三种方法T、transpose、swapaxes
本文地址:http://www.codeinn.net/misctech/10743.html