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


Posted in Python onMay 27, 2019

Numpy是高性能科学计算和数据分析的基础包,里面包含了许多对数组进行快速运算的标准数学函数,掌握这些方法,能摆脱数据处理时的循环。

1.首先数组转置(T)

创建二维数组data如下:

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

进行矩阵运算时,经常要用数组转置,比如计算矩阵内积X^T X.这时就需要利用数组转置,如下:

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

2.轴对换之transpose

对于高维数组,可以使用轴对换来对多个维度进行变换。

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

这里创建了一个三维数组,各维度大小分别为2,3,4。

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

transpose进行的操作其实是将各个维度重置,原来(2,3,4)对应的是(0,1,2)。使用transpose(1,0,2)后,各个维度大小变为(3,2,4),其实就是将第一维和第二维互换。

对于这个三维数组,转置T其实就等价于transpose(2,1,0),如下:

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

3.两轴对换swapaxes:swapaxes方法接受的参数是一对轴编号,使用transpose方法是对整个轴进行对换,而swapaxes是将参数的两个轴进行对换。刚刚上面的transpose(1,0,2),实际上就是将0和1轴进行对换,因此使用swapaxes也可以实现,如下:

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

上面就是Numpy包里面进行数组转置和轴对换最常用的方法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
举例讲解Python中的Null模式与桥接模式编程
Feb 02 Python
Python字符串拼接、截取及替换方法总结分析
Apr 13 Python
python方向键控制上下左右代码
Jan 20 Python
python实现dijkstra最短路由算法
Jan 17 Python
python实现爬山算法的思路详解
Apr 09 Python
对python3 Serial 串口助手的接收读取数据方法详解
Jun 12 Python
Pandas删除数据的几种情况(小结)
Jun 21 Python
浅谈ROC曲线的最佳阈值如何选取
Feb 28 Python
Python如何用wx模块创建文本编辑器
Jun 07 Python
python实现逻辑回归的示例
Oct 09 Python
详解Java中一维、二维数组在内存中的结构
Feb 11 Python
OpenCV 图像梯度的实现方法
Jul 25 Python
python利用多种方式来统计词频(单词个数)
May 27 #Python
numpy中的ndarray方法和属性详解
May 27 #Python
numpy.linspace函数具体使用详解
May 27 #Python
Django利用cookie保存用户登录信息的简单实现方法
May 27 #Python
Django框架设置cookies与获取cookies操作详解
May 27 #Python
numpy下的flatten()函数用法详解
May 27 #Python
详解numpy的argmax的具体使用
May 27 #Python
You might like
动漫女神老婆无限好,但日本女生可能就不是这么一回事了!
2020/03/04 日漫
smtp邮件发送一例
2006/10/09 PHP
PHP内核探索:哈希表碰撞攻击原理
2015/07/31 PHP
php如何执行非缓冲查询API
2016/07/22 PHP
基于PHP制作验证码
2016/10/12 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
2017/02/15 PHP
yii2中关于加密解密的那些事儿
2018/06/12 PHP
linux mint下安装phpstorm2020包括JDK部分的教程详解
2020/09/17 PHP
收藏一些不常用,但是有用的代码
2007/03/12 Javascript
json跟xml的对比分析
2008/06/10 Javascript
JavaScript DOM事件(笔记)
2015/04/08 Javascript
Javascript实现获取及设置光标位置的方法
2015/07/21 Javascript
js中 javascript:void(0) 用法详解
2015/08/11 Javascript
使用Web Uploader实现多文件上传
2016/06/08 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
JavaScript中数组Array方法详解
2017/02/27 Javascript
jQuery设计思想
2017/03/07 Javascript
使用jQuery实现页面定时弹出广告效果
2017/08/24 jQuery
js中时间格式化的几种方法
2018/07/22 Javascript
Emberjs 通过 axios 下载文件的方法
2019/09/03 Javascript
uni-app实现点赞评论功能
2019/11/25 Javascript
在Vue 中实现循环渲染多个相同echarts图表
2020/07/20 Javascript
Vue中component标签解决项目组件化操作
2020/09/04 Javascript
python错误处理详解
2014/09/28 Python
Python使用scrapy采集数据时为每个请求随机分配user-agent的方法
2015/04/08 Python
django定期执行任务(实例讲解)
2017/11/03 Python
Python设计模式之中介模式简单示例
2018/01/09 Python
python操作xlsx文件的包openpyxl实例
2018/05/03 Python
深入flask之异步非堵塞实现代码示例
2018/07/31 Python
python os模块简单应用示例
2019/05/23 Python
python使用配置文件过程详解
2019/12/28 Python
CSS3制作日历实现代码
2012/01/21 HTML / CSS
教育学专业毕业生的自我评价
2013/11/21 职场文书
培训自我鉴定
2014/01/31 职场文书
2015年国庆节慰问信
2015/03/23 职场文书
创业计划书之便利店
2019/09/05 职场文书