numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)


Posted in Python onApril 28, 2020

numpy库对多维数组有非常灵巧的处理方式,主要的处理方法有:

.reshape(shape) : 不改变数组元素,返回一个shape形状的数组,原数组不变

.resize(shape) : 与.reshape()功能一致,但修改原数组

In [22]: a = np.arange(20)
#原数组不变
In [23]: a.reshape([4,5])
Out[23]:
array([[ 0, 1, 2, 3, 4],
    [ 5, 6, 7, 8, 9],
    [10, 11, 12, 13, 14],
    [15, 16, 17, 18, 19]])

In [24]: a
Out[24]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
    17, 18, 19])

#修改原数组
In [25]: a.resize([4,5])

In [26]: a
Out[26]:
array([[ 0, 1, 2, 3, 4],
    [ 5, 6, 7, 8, 9],
    [10, 11, 12, 13, 14],
    [15, 16, 17, 18, 19]])

.swapaxes(ax1,ax2) : 将数组n个维度中两个维度进行调换,不改变原数组

In [27]: a.swapaxes(1,0)
Out[27]:
array([[ 0, 5, 10, 15],
    [ 1, 6, 11, 16],
    [ 2, 7, 12, 17],
    [ 3, 8, 13, 18],
    [ 4, 9, 14, 19]])

.flatten() : 对数组进行降维,返回折叠后的一维数组,原数组不变

In [29]: a.flatten()
Out[29]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
    17, 18, 19])

到此这篇关于numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)的文章就介绍到这了,更多相关numpy ndarray多维数组维度变换内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python中lambda函数 list comprehension 和 zip函数使用指南
Sep 28 Python
Python使用修饰器执行函数的参数检查功能示例
Sep 26 Python
使用python实现knn算法
Dec 20 Python
wxPython之解决闪烁的问题
Jan 15 Python
matplotlib.pyplot画图 图片的二进制流的获取方法
May 24 Python
python利用Tesseract识别验证码的方法示例
Jan 21 Python
Win10下Python3.7.3安装教程图解
Jul 08 Python
python子线程退出及线程退出控制的代码
Oct 16 Python
python图形开发GUI库pyqt5的详细使用方法及各控件的属性与方法
Feb 14 Python
python实现梯度下降法
Mar 24 Python
Django 允许局域网中的机器访问你的主机操作
May 13 Python
python实现MySQL指定表增量同步数据到clickhouse的脚本
Feb 26 Python
简单了解python shutil模块原理及使用方法
Apr 28 #Python
python脚本监控logstash进程并邮件告警实例
Apr 28 #Python
用Python在Excel里画出蒙娜丽莎的方法示例
Apr 28 #Python
全网首秀之Pycharm十大实用技巧(推荐)
Apr 27 #Python
python实时监控logstash日志代码
Apr 27 #Python
python实现秒杀商品的微信自动提醒功能(代码详解)
Apr 27 #Python
浅析python 定时拆分备份 nginx 日志的方法
Apr 27 #Python
You might like
珊瑚虫IP库浅析
2007/02/15 PHP
PHP中SQL查询语句的id=%d解释(推荐)
2016/12/10 PHP
Laravel框架源码解析之入口文件原理分析
2020/05/14 PHP
javascript 面向对象编程基础:继承
2009/08/21 Javascript
IE不支持getElementsByClassName最终完美解决方案
2012/12/17 Javascript
解析js原生方法创建表格效率测试
2013/07/08 Javascript
js下拉框二级关联菜单效果代码具体实现
2013/08/03 Javascript
完美解决IE低版本不支持call与apply的问题
2013/12/05 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
javascript实现保留两位小数的多种方法
2015/12/18 Javascript
所见即所得的富文本编辑器bootstrap-wysiwyg使用方法详解
2016/05/27 Javascript
nodejs结合socket.io实现websocket通信功能的方法
2018/01/12 NodeJs
使用node打造自己的命令行工具方法教程
2018/03/26 Javascript
解决在vue项目中webpack打包后字体不生效的问题
2018/09/01 Javascript
Layui 解决表格异步调用后台分页的问题
2019/10/26 Javascript
swiper实现异形轮播效果
2019/11/28 Javascript
[01:04:32]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第二场 2月23日
2021/03/11 DOTA
Python  连接字符串(join %)
2008/09/06 Python
优化Python代码使其加快作用域内的查找
2015/03/30 Python
python实现扫雷游戏
2020/03/03 Python
在pycharm中关掉ipython console/PyDev操作
2020/06/09 Python
Python下载的11种姿势(小结)
2020/11/18 Python
HTML5如何实现元素拖拽
2016/03/11 HTML / CSS
阿里巴巴国际站:Alibaba.com
2016/07/21 全球购物
如何用JQuery进行表单验证
2013/05/29 面试题
市场部专员岗位职责
2013/11/30 职场文书
前台文员我鉴定
2014/01/12 职场文书
光荣入党自我鉴定
2014/01/22 职场文书
大课间活动实施方案
2014/03/06 职场文书
兴趣小组活动总结
2014/05/05 职场文书
雏鹰争章活动总结
2014/05/09 职场文书
财务部副经理岗位职责范本
2014/06/17 职场文书
2014年幼儿园小班工作总结
2014/12/04 职场文书
化验室安全管理制度
2015/08/06 职场文书
《惊弓之鸟》教学反思
2016/02/20 职场文书
承诺书的签字人,需不需要承担相应的责任?
2019/07/09 职场文书