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 相关文章推荐
利用Tkinter和matplotlib两种方式画饼状图的实例
Nov 06 Python
在Pycharm terminal中字体大小设置的方法
Jan 16 Python
在Python中如何传递任意数量的实参的示例代码
Mar 21 Python
详解pyppeteer(python版puppeteer)基本使用
Jun 12 Python
pytz格式化北京时间多出6分钟问题的解决方法
Jun 21 Python
python openCV获取人脸部分并存储功能
Aug 28 Python
Python实现快速排序的方法详解
Oct 25 Python
Python3 实现爬取网站下所有URL方式
Jan 16 Python
在Ubuntu 20.04中安装Pycharm 2020.1的图文教程
Apr 30 Python
基于Python实现2种反转链表方法代码实例
Jul 06 Python
Python把图片转化为pdf代码实例
Jul 28 Python
基于python制作简易版学生信息管理系统
Apr 20 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
php利用iframe实现无刷新文件上传功能的代码
2011/09/29 PHP
PHP simplexml_load_string()函数实例讲解
2019/02/03 PHP
javascript对talbe进行动态添加、删除、验证实现代码
2012/03/29 Javascript
js 剪切板的用法(clipboardData.setData)与js match函数介绍
2013/11/19 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
js剪切板应用clipboardData实例解析
2016/05/29 Javascript
js事件冒泡、事件捕获和阻止默认事件详解
2016/08/04 Javascript
jQuery Validate插件实现表单验证
2016/08/19 Javascript
Javascript 实现微信分享(QQ、朋友圈、分享给朋友)
2016/10/21 Javascript
教你用十行node.js代码读取docx的文本
2017/03/08 Javascript
vue基础之data存储数据及v-for循环用法示例
2019/03/08 Javascript
[04:04]显微镜下的DOTA2第六期——电影级别的华丽团战
2014/06/20 DOTA
[01:03]PWL开团时刻DAY6——别打我
2020/11/05 DOTA
python基于隐马尔可夫模型实现中文拼音输入
2016/04/01 Python
详解python字节码
2018/02/07 Python
Python列表解析操作实例总结
2020/02/26 Python
Levi’s美国官网:美国著名的牛仔裤品牌
2016/08/19 全球购物
全球速卖通:AliExpress(国际版淘宝)
2017/09/20 全球购物
乌克兰网上服装店:Bolf.ua
2018/10/30 全球购物
巴西最大的玩具连锁店:Ri Happy
2020/06/17 全球购物
波兰最大的电商平台:Allegro.pl
2021/02/06 全球购物
德国W家官网,可直邮中国的母婴商城:Windeln.de
2021/03/03 全球购物
生产班组长岗位职责
2014/01/05 职场文书
村官工作鉴定评语
2014/01/27 职场文书
办公室主任主任岗位责任制
2014/02/11 职场文书
党的群众路线教育实践活动动员会主持词
2014/03/20 职场文书
《歌唱二小放牛郎》教学反思
2014/04/19 职场文书
初中优秀班集体申报材料
2014/05/01 职场文书
初中教师业务学习材料
2014/05/12 职场文书
过程装备与控制工程专业求职信
2014/07/02 职场文书
群众路线自我剖析范文
2014/11/04 职场文书
学生犯错保证书
2015/05/09 职场文书
谢师宴家长答谢词
2015/09/30 职场文书
go语言中切片与内存复制 memcpy 的实现操作
2021/04/27 Golang
彻底理解golang中什么是nil
2021/04/29 Golang
Java内存模型之happens-before概念详解
2021/06/13 Java/Android