最简单的方式讲明白numpy.reshape()函数
reshape() 函数: 这个方法是在不改变数据内容的情况下,改变一个数组的格式,参数如下图:
参数说明:
a:输入的数组。
newshape:新格式数组的形状。
order:可选范围为{‘C’, ‘F’, ‘A’}。按照order的顺序读取a的元素,并按照索引顺序将元素放到变换后的的数组中。如果不进行order参数的设置,默认参数为C。
参数C:横着读,横着写,优先读/写一行。
参数F:竖着读,竖着写,优先读/写一列。
参数A:所生成的数组的效果与原数组a的数据存储方式有关,如果数据是按照FORTRAN
存储的话,它的生成效果与”F“相同,否则与“C”相同。
返回值:新生成的数组
举例1:将一维数组reshape成2×8的二维数组。
import numpy as npa = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
a = np.asarray(a)
b = np.reshape(a, (2, 8))
print(b)#或者这样写a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]a = np.asarray(a)b = a.reshape((2, 8))print(b)
两种写法运行一样,运行结果:
[[ 0 1 2 3 4 5 6 7]
[ 8 9 10 11 12 13 14 15]]
例2:将order设置为F。
import numpy as npa = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]a = np.asarray(a)b = np.reshape(a, (2, 8), order='f')print(b)c=np.reshape(b,(4,4),order='f')print(c)
运行结果:
例3:将order设置为a
第一种情况reshape数组a的时候将order改为c,reshape数组b的时候将order设置为a,代码如下:
import numpy as npa = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]a = np.asarray(a)b = np.reshape(a, (2, 8), order='C')print(b)x=np.reshape(b,(4,4),order='a')print(x)
运行结果:
可以发现,如果数组b是按照C的方式做的reshape,x也是按照C的方式做reshape。
第二种情况reshape数组a的时候将order改为F,reshape数组b的时候将order设置为a,代码如下:
import numpy as npa = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]a = np.asarray(a)b = np.reshape(a, (2, 8), order='F')print(b)x=np.reshape(b,(4,4),order='a')print(x)
运行结果:
可以发现,如果数组b是按照F的方式做的reshape,x也是按照F的方式做reshape。
最简单的方式讲明白numpy.reshape()函数相关推荐
- Numpy.reshape函数解释
Numpy.reshape()与shape函数 相关知识:tensorflow中利用张量来表示数据,张量是有阶数的,一阶张量就是一个一维向量,二阶张量是矩阵,关于张量的描述更多描述,参考http:// ...
- python中reshape函数_Python numpy.reshape函数方法的使用
numpy.reshape numpy.reshape(a, newshape, order='C') [source] 在不更改数据的情况下为数组赋予新的shape.参数 :a :array_ ...
- 【ML】numpy meshgrid函数使用说明(全网最简单版)
[ML]numpy meshgrid函数使用说明 meshgrid的作用? 怎么使用(举例说明) 手工描点(帮助理解) 怎么画三维? 一维展开后是什么效果? 附画图代码 meshgrid的作用? 首先 ...
- reshape函数的用法
一.作用:常使用在对矩阵的处理上 二.函数特点:reshape函数是针对对目标函数取数据用于重新布局时,是按照列的方式来获取数据的 三.几种常见使用方式: 方式一:arr.reshape((m,n)) ...
- 【reshape函数】
一.作用:常使用在对矩阵的处理上 二.函数特点:reshape函数是针对对目标函数取数据用于重新布局时,是按照列的方式来获取数据的 三.几种常见使用方式: 方式一:arr.reshape((m,n)) ...
- 什么是机器学习?有哪些分类?怎样上手开发?终于有人讲明白了
导读:本文首先介绍何谓机器学习,以及与机器学习相关的基本概念,这是学习和理解机器学习的基础.按照学习方式的不同,机器学习可以分为不同类型,如监督学习.无监督学习.强化学习等,本文会详细介绍它们各自的特 ...
- 如何让图表更有说服力?6大准则和1个经典案例给你讲明白
导读:以正确的格式将正确的想法传达给正确的人. 作者:斯科特·贝里纳托(Scott Berinato) 来源:大数据DT(ID:hzdashuju) 让人们从数据中理解你的想法是件好事,但让人们因为他 ...
- 什么是折线图?怎样用Python绘制?怎么用?终于有人讲明白了(附代码)
来源:大数据DT 本文约5400字,建议阅读10分钟 本文为你介绍数据分析时经常用到的折线图,可以用来呈现哪些数据关系?在数据分析过程中可以解决哪些问题?怎样用Python绘制折线图? 01 概述 折 ...
- c linux time微秒_学习linux,看这篇1.5w多字的linux命令详解(6小时讲明白Linux)
用心分享,共同成长 没有什么比每天进步一点点更重要了 本篇文章主要讲解了一些linux常用命令,主要讲解模式是,命令介绍.命令参数格式.命令参数.命令常用参数示例.由于linux命令较多,我还特意选了 ...
最新文章
- centos设置mysql为系统服务_CentOS系统如何设置Apache和MYSQL服务开机自动运行
- mysql数据库 web asp.net,使用基于asp.net web的应用程序的mysql数据库
- Java学习日志(一)
- Intellij IDEA Debug 调试技巧
- 包含绑定变量的sql进行调优需注意一点
- 正则表达式的深入理解
- Spark1.4启动spark-shell时initializing失败
- Android系统(138)--- Android编译系统
- JSF通过EL读取List中的值
- DefaultKeyedVector和KeyedVector用法
- docker 命令随笔
- 是时候抛弃 Svelte、React 和 VUE 了吗?
- 80psi等于多少kpa_压力单位换算(如psi)
- 用阳光心态去实现快乐工作
- textureview 放大缩小的坑
- str(n)cpy的注意事项以及memset的简单使用
- 视觉SLAM前端——PnP
- 计算机发展历程结绳记事,结绳记事与计算机
- C++ 实现 Matrix (矩阵)类
- 【Cocos2dx】飘字特效与碰撞检测