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字符转换
Sep 06 Python
使用Python简单的实现树莓派的WEB控制
Feb 18 Python
python中OrderedDict的使用方法详解
May 05 Python
python实现k-means聚类算法
Feb 23 Python
Python Series从0开始索引的方法
Nov 06 Python
Python函数的参数常见分类与用法实例详解
Mar 30 Python
python程序控制NAO机器人行走
Apr 29 Python
pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法
Jun 21 Python
Python generator生成器和yield表达式详解
Aug 08 Python
python 解决cv2绘制中文乱码问题
Dec 23 Python
Python调用shell命令常用方法(4种)
May 11 Python
python编程简单几行代码实现视频转换Gif示例
Oct 05 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
mysql总结之explain
2012/02/27 PHP
使用php显示搜索引擎来的关键词
2014/02/13 PHP
PHP实现通过Luhn算法校验信用卡卡号是否有效
2015/03/23 PHP
js函数setTimeout延迟执行的简单介绍
2013/07/17 Javascript
javascript:文字不间断向左移动的实例代码
2013/08/08 Javascript
javascript修改表格背景色实例代码分享
2013/12/10 Javascript
JavaScript打印网页指定区域的例子
2014/05/03 Javascript
JavaScript使用push方法添加一个元素到数组末尾用法实例
2015/04/06 Javascript
jQuery 跨域访问解决原理案例详解
2016/07/09 Javascript
全面解析JavaScript中“&&”和“||”操作符(总结篇)
2016/07/18 Javascript
jQuery fadeOut 异步实例代码详解
2016/08/18 Javascript
JS前端开发判断是否是手机端并跳转操作(小结)
2017/02/05 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
BootStrap给table表格的每一行添加一个按钮事件
2017/09/07 Javascript
Vue 父子组件数据传递的四种方式( inheritAttrs + $attrs + $listeners)
2018/05/04 Javascript
p5.js临摹动态图形实现方法详解
2019/10/23 Javascript
微信小程序保存图片到相册权限设置
2020/04/09 Javascript
Python的Django框架安装全攻略
2015/07/15 Python
python多线程方式执行多个bat代码
2016/06/07 Python
Python实现批量检测HTTP服务的状态
2016/10/27 Python
对python中类的继承与方法重写介绍
2019/01/20 Python
python 调用钉钉机器人的方法
2019/02/20 Python
Python3.6中Twisted模块安装的问题与解决
2019/04/15 Python
Python全面分析系统的时域特性和频率域特性
2020/02/26 Python
django修改models重建数据库的操作
2020/03/31 Python
使用Python将图片转正方形的两种方法实例代码详解
2020/04/29 Python
纯CSS3实现漂亮的input输入框动画样式库(Text input love)
2018/12/29 HTML / CSS
详解如何使用rem或viewport进行移动端适配
2020/08/14 HTML / CSS
澳大利亚在线生活方式商店:Mytopia
2018/07/08 全球购物
需求分析说明书
2014/05/09 职场文书
建筑安全生产责任书
2014/07/22 职场文书
股东出资证明书范例
2014/10/04 职场文书
酒店圣诞节活动总结
2015/05/06 职场文书
2015年党总支工作总结
2015/05/25 职场文书
离职信范本
2015/06/23 职场文书
golang如何去除多余空白字符(含制表符)
2021/04/25 Golang