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计算程序运行时间的方法
Dec 13 Python
用PyQt进行Python图形界面的程序的开发的入门指引
Apr 14 Python
python绘图方法实例入门
May 19 Python
python批量读取txt文件为DataFrame的方法
Apr 03 Python
Python实现获取前100组勾股数的方法示例
May 04 Python
Python简单读写Xls格式文档的方法示例
Aug 17 Python
Python+Tensorflow+CNN实现车牌识别的示例代码
Oct 11 Python
Django-xadmin+rule对象级权限的实现方式
Mar 30 Python
Anaconda+vscode+pytorch环境搭建过程详解
May 25 Python
基于Python爬虫采集天气网实时信息
Jun 05 Python
Python批量修改xml的坐标值全部转为整数的实例代码
Nov 26 Python
python爬虫scrapy框架之增量式爬虫的示例代码
Feb 26 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
世界咖啡生产者论坛呼吁:需要立即就咖啡价格采取认真行动
2021/03/06 咖啡文化
PHP用反撇号执行外部命令
2015/04/14 PHP
PHP使用trim函数去除字符串左右空格及特殊字符实例
2016/01/07 PHP
基于jquery的超简单上下翻
2010/04/20 Javascript
元素的内联事件处理函数的特殊作用域在各浏览器中存在差异
2011/01/12 Javascript
js中关于String对象的replace使用详解
2011/05/24 Javascript
最新的10款jQuery内容滑块插件分享
2011/09/18 Javascript
jQuery父级以及同级元素查找介绍
2013/09/04 Javascript
js数组去重的常用方法总结
2014/01/24 Javascript
javascript转换静态图片,增加粒子动画效果
2015/05/28 Javascript
JS实现弹性菜单效果代码
2015/09/07 Javascript
高效利用Angular中内置服务$http、$location等
2016/03/22 Javascript
微信小程序实现发红包功能
2018/07/11 Javascript
浅谈webpack性能榨汁机(打包速度优化)
2019/01/09 Javascript
layui 对table中的数据进行转义的实例
2019/09/12 Javascript
解决vue字符串换行问题(绝对管用)
2020/08/06 Javascript
小程序实现可拖动的悬浮按钮
2020/09/07 Javascript
python文件操作之目录遍历实例分析
2015/05/20 Python
Python构造自定义方法来美化字典结构输出的示例
2016/06/16 Python
python实现杨辉三角思路
2017/07/14 Python
在Python中执行系统命令的方法示例详解
2017/09/14 Python
Python实现基本数据结构中栈的操作示例
2017/12/04 Python
python 读取目录下csv文件并绘制曲线v111的方法
2018/07/06 Python
Pytorch加载部分预训练模型的参数实例
2019/08/18 Python
HTML5 Notification(桌面提醒)功能使用实例
2014/03/17 HTML / CSS
全球速卖通法国在线交易平台:AliExpress法国
2017/07/07 全球购物
Ralph Lauren英国官方网站:Ralph Lauren UK
2018/04/03 全球购物
Skyscanner香港:机票比价, 平机票和廉价航空机票预订
2020/02/07 全球购物
C#如何判断当前用户是否输入某个域
2015/12/07 面试题
自动化专业毕业生自荐信
2013/11/01 职场文书
优秀班干部事迹材料
2014/01/26 职场文书
《陈涉世家》教学反思
2014/04/12 职场文书
党支部换届选举方案
2014/05/08 职场文书
费城故事观后感
2015/06/10 职场文书
MySQL解决Navicat设置默认字符串时的报错问题
2022/06/16 MySQL
Java Spring Boot请求方式与请求映射过程分析
2022/06/25 Java/Android