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实现清屏的方法
Apr 30 Python
Python中list列表的一些进阶使用方法介绍
Aug 15 Python
利用python批量给云主机配置安全组的方法教程
Jun 21 Python
Python实现简易版的Web服务器(推荐)
Jan 29 Python
pandas 对series和dataframe进行排序的实例
Jun 09 Python
python求最大连续子数组的和
Jul 07 Python
python中cPickle类使用方法详解
Aug 27 Python
对Python 检查文件名是否规范的实例详解
Jun 10 Python
Pycharm 文件更改目录后,执行路径未更新的解决方法
Jul 19 Python
利用anaconda作为python的依赖库管理方法
Aug 13 Python
Python日志logging模块功能与用法详解
Apr 09 Python
django日志默认打印request请求信息的方法示例
May 17 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 中文乱码解决办法总结分析
2009/07/30 PHP
11个PHP 分页脚本推荐
2011/08/15 PHP
使用git迁移Laravel项目至新开发环境的步骤详解
2020/04/06 PHP
Gird组件 Part-3:范例RSSFeed Viewer
2007/03/10 Javascript
JavaScript多线程的实现方法
2007/05/08 Javascript
javascript笔试题目附答案@20081025_jb51.net
2008/10/26 Javascript
Extjs学习过程中新手容易碰到的低级错误积累
2010/02/11 Javascript
C#中TrimStart,TrimEnd,Trim在javascript上的实现
2011/01/17 Javascript
JavaScript打开word文档的实现代码(c#)
2012/04/16 Javascript
javascript不可用的问题探究
2013/10/01 Javascript
文本框只能选择数据到文本框禁止手动输入
2013/11/22 Javascript
jquery each的几种常用的使用方法示例
2014/01/21 Javascript
javascript实现根据身份证号读取相关信息
2014/12/17 Javascript
js表单提交和submit提交的区别实例分析
2015/12/10 Javascript
从零到一详聊创建Vue工程及遇到的常见问题
2019/04/25 Javascript
详解mpvue开发微信小程序基础知识
2019/09/23 Javascript
javascript实现切割轮播效果
2019/11/28 Javascript
NodeJS模块Buffer原理及使用方法解析
2020/11/11 NodeJs
使用Python的Twisted框架编写简单的网络客户端
2015/04/16 Python
python3实现全角和半角字符转换的方法示例
2017/09/21 Python
python 实现数组list 添加、修改、删除的方法
2018/04/04 Python
python3实现SMTP发送邮件详细教程
2018/06/19 Python
python tkinter组件使用详解
2019/09/16 Python
python绘制彩虹图
2019/12/16 Python
python爬虫实例之获取动漫截图
2020/05/31 Python
html5使用Drag事件编辑器拖拽上传图片的示例代码
2017/08/22 HTML / CSS
html table呈现个人简历以及单元格宽度失效的问题解决
2021/01/22 HTML / CSS
Mountain Warehouse澳大利亚官网:欧洲家庭户外品牌倡导者
2016/11/20 全球购物
英国领先的男士服装和时尚零售商:Burton
2017/01/09 全球购物
中国首家奢侈品O2O网购平台:第五大道奢侈品网
2017/12/14 全球购物
县委班子四风对照检查材料思想汇报
2014/09/29 职场文书
有关浪费资源的建议书
2015/09/14 职场文书
Oracle笔记
2021/04/05 Oracle
分析ZooKeeper分布式锁的实现
2021/06/30 Java/Android
MySQL外键约束(FOREIGN KEY)案例讲解
2021/08/23 MySQL
html中相对位置与绝对位置的具体使用
2022/05/15 HTML / CSS