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函数局部变量用法实例分析
Aug 04 Python
Python内置数据结构与操作符的练习题集锦
Jul 01 Python
Python实现简单的四则运算计算器
Nov 02 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
Jan 04 Python
利用numpy和pandas处理csv文件中的时间方法
Apr 19 Python
在Python中定义一个常量的方法
Nov 10 Python
Python字典的核心底层原理讲解
Jan 24 Python
wxPython实现绘图小例子
Nov 19 Python
Python+redis通过限流保护高并发系统
Apr 15 Python
Pycharm 设置默认解释器路径和编码格式的操作
Feb 05 Python
Python使用MapReduce进行简单的销售统计
Apr 22 Python
利用Python实现翻译HTML中的文本字符串
Jun 21 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/06/21 PHP
php 多线程上下文中安全写文件实现代码
2009/12/28 PHP
php中获取主机名、协议及IP地址的方法
2014/11/18 PHP
基于 Swoole 的微信扫码登录功能实现代码
2018/01/15 PHP
PHP变量的作用范围实例讲解
2020/12/22 PHP
Javascript中Eval函数的使用
2010/03/23 Javascript
jQuery实现列表自动循环滚动鼠标悬停时停止滚动
2013/09/06 Javascript
Javascript 实现复制(Copy)动作方法大全
2014/06/20 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
Jquery实现textarea根据文本内容自适应高度
2015/04/03 Javascript
JavaScript类型系统之正则表达式
2016/01/05 Javascript
微信小程序 下拉菜单简单实例
2017/04/13 Javascript
Node.js 中使用 async 函数的方法
2017/11/20 Javascript
关于Vue单页面骨架屏实践记录
2017/12/13 Javascript
js实现控制文件拖拽并获取拖拽内容功能
2018/02/17 Javascript
Vue.js自定义事件的表单输入组件方法
2018/03/08 Javascript
Javascript 编码约定(编码规范)
2018/03/11 Javascript
[原创]jQuery实现合并/追加数组并去除重复项的方法
2018/04/11 jQuery
解决layui弹框失效的问题
2019/09/09 Javascript
Vue 实现分页与输入框关键字筛选功能
2020/01/02 Javascript
JS控制下拉列表左右选择实例代码
2020/05/08 Javascript
python zip文件 压缩
2008/12/24 Python
Python类的多重继承问题深入分析
2014/11/09 Python
python脚本设置系统时间的两种方法
2016/02/21 Python
numpy实现合并多维矩阵、list的扩展方法
2018/05/08 Python
python实现n个数中选出m个数的方法
2018/11/13 Python
在pycharm中使用git版本管理以及同步github的方法
2019/01/16 Python
详解用python写网络爬虫-爬取新浪微博评论
2019/05/10 Python
python单例设计模式实现解析
2020/01/07 Python
Marc Jacobs彩妆官网:Marc Jacobs Beauty
2017/07/03 全球购物
在C语言中实现抽象数据类型什么方法最好
2014/06/26 面试题
电大自我鉴定范文
2013/10/01 职场文书
2013届毕业生求职信范文
2013/11/20 职场文书
教师考察材料范文
2014/06/03 职场文书
音乐幼师求职信
2014/07/09 职场文书
先进典型事迹材料
2014/12/29 职场文书