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 代码效率的方法
Jul 03 Python
python使用正则搜索字符串或文件中的浮点数代码实例
Jul 11 Python
详解Python之unittest单元测试代码
Jan 24 Python
Sanic框架基于类的视图用法示例
Jul 18 Python
python 多线程将大文件分开下载后在合并的实例
Nov 09 Python
在Python中使用Neo4j的方法
Mar 14 Python
Python小白必备的8个最常用的内置函数(推荐)
Apr 03 Python
python 中xpath爬虫实例详解
Aug 26 Python
Python坐标轴操作及设置代码实例
Jun 04 Python
使用已经得到的keras模型识别自己手写的数字方式
Jun 29 Python
Pytorch实验常用代码段汇总
Nov 19 Python
Pycharm安装python库的方法
Nov 24 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中上传大体积文件时需要的设置
2006/10/09 PHP
php中常用编辑器推荐
2007/01/02 PHP
PHP中计算字符串相似度的函数代码
2012/12/29 PHP
PHP goto语句简介和使用实例
2014/03/11 PHP
php过滤html标记属性类用法实例
2014/09/23 PHP
Linux系统中为php添加pcntl扩展
2016/08/28 PHP
Node.js巧妙实现Web应用代码热更新
2015/10/22 Javascript
基于socket.io+express实现多房间聊天
2016/03/17 Javascript
jQuery实现点击按钮文字变成input框点击保存变成文字
2016/05/09 Javascript
jQuery右下角悬浮广告实例
2016/10/17 Javascript
JS实现的适合做faq或menu滑动效果示例
2016/11/17 Javascript
任意Json转成无序列表的方法示例
2016/12/09 Javascript
Vue数据驱动模拟实现3
2017/01/11 Javascript
jquery平滑滚动到顶部插件使用详解
2017/05/08 jQuery
Angular 5.x 学习笔记之Router(路由)应用
2018/04/08 Javascript
微信小程序云开发之云函数详解
2019/05/16 Javascript
微信小程序云开发 生成带参小程序码流程
2019/05/18 Javascript
vuejs移动端实现div拖拽移动
2019/07/25 Javascript
JS实现导航栏楼层特效
2020/01/01 Javascript
python下解压缩zip文件并删除文件的实例
2018/04/24 Python
Python安装lz4-0.10.1遇到的坑
2018/05/20 Python
Python机器学习库scikit-learn安装与基本使用教程
2018/06/25 Python
对pycharm代码整体左移和右移缩进快捷键的介绍
2018/07/16 Python
windows下 兼容Python2和Python3的解决方法
2018/12/05 Python
TensorFlow2.0矩阵与向量的加减乘实例
2020/02/07 Python
python openCV自制绘画板
2020/10/27 Python
详解Python GUI编程之PyQt5入门到实战
2020/12/10 Python
Shopee马来西亚:随拍即卖,最佳行动电商拍卖平台
2017/06/05 全球购物
政法学院毕业生求职信
2014/02/28 职场文书
心理健康日活动总结
2014/05/08 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
2015年度绩效考核工作总结
2015/05/27 职场文书
民间借贷纠纷起诉书
2015/08/03 职场文书
幼儿园亲子活动感想
2015/08/07 职场文书
婚庆答谢词大全
2015/09/29 职场文书
深度学习详解之初试机器学习
2021/04/14 Python