详解Numpy数组转置的三种方法T、transpose、swapaxes

yipeiwu_com6年前Python基础

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包里面进行数组转置和轴对换最常用的方法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中线程的MQ消息队列实现以及消息队列的优点解析

“消息队列”是在消息的传输过程中保存消息的容器。消息队列管理器在将消息从它的源中继到它的目标时充当中间人。队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会...

Python实现的简单排列组合算法示例

本文实例讲述了Python实现的简单排列组合算法。分享给大家供大家参考,具体如下: 1.python语言简单、方便,其内部可以快速实现排列组合算法,下面做简单介绍 2.一个列表数据任意组...

python石头剪刀布小游戏(三局两胜制)

Python 石头剪刀布小游戏(三局两胜),供大家参考,具体内容如下 import random all_choioces = ['石头', '剪刀', '布'] win_list...

Python实现计算字符串中出现次数最多的字符示例

Python实现计算字符串中出现次数最多的字符示例

本文实例讲述了Python实现计算字符串中出现次数最多的字符。分享给大家供大家参考,具体如下: 1. 看了网上挺多写的方法都没达到我所需要的效果,我干脆自己写了个方法共享给大家 ee...

Python中字符编码简介、方法及使用建议

1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码。计算机世...