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()函数相关推荐

  1. Numpy.reshape函数解释

    Numpy.reshape()与shape函数 相关知识:tensorflow中利用张量来表示数据,张量是有阶数的,一阶张量就是一个一维向量,二阶张量是矩阵,关于张量的描述更多描述,参考http:// ...

  2. python中reshape函数_Python numpy.reshape函数方法的使用

    numpy.reshape numpy.reshape(a, newshape, order='C')    [source] 在不更改数据的情况下为数组赋予新的shape.参数 :a :array_ ...

  3. 【ML】numpy meshgrid函数使用说明(全网最简单版)

    [ML]numpy meshgrid函数使用说明 meshgrid的作用? 怎么使用(举例说明) 手工描点(帮助理解) 怎么画三维? 一维展开后是什么效果? 附画图代码 meshgrid的作用? 首先 ...

  4. reshape函数的用法

    一.作用:常使用在对矩阵的处理上 二.函数特点:reshape函数是针对对目标函数取数据用于重新布局时,是按照列的方式来获取数据的 三.几种常见使用方式: 方式一:arr.reshape((m,n)) ...

  5. 【reshape函数】

    一.作用:常使用在对矩阵的处理上 二.函数特点:reshape函数是针对对目标函数取数据用于重新布局时,是按照列的方式来获取数据的 三.几种常见使用方式: 方式一:arr.reshape((m,n)) ...

  6. 什么是机器学习?有哪些分类?怎样上手开发?终于有人讲明白了

    导读:本文首先介绍何谓机器学习,以及与机器学习相关的基本概念,这是学习和理解机器学习的基础.按照学习方式的不同,机器学习可以分为不同类型,如监督学习.无监督学习.强化学习等,本文会详细介绍它们各自的特 ...

  7. 如何让图表更有说服力?6大准则和1个经典案例给你讲明白

    导读:以正确的格式将正确的想法传达给正确的人. 作者:斯科特·贝里纳托(Scott Berinato) 来源:大数据DT(ID:hzdashuju) 让人们从数据中理解你的想法是件好事,但让人们因为他 ...

  8. 什么是折线图?怎样用Python绘制?怎么用?终于有人讲明白了(附代码)

    来源:大数据DT 本文约5400字,建议阅读10分钟 本文为你介绍数据分析时经常用到的折线图,可以用来呈现哪些数据关系?在数据分析过程中可以解决哪些问题?怎样用Python绘制折线图? 01 概述 折 ...

  9. c linux time微秒_学习linux,看这篇1.5w多字的linux命令详解(6小时讲明白Linux)

    用心分享,共同成长 没有什么比每天进步一点点更重要了 本篇文章主要讲解了一些linux常用命令,主要讲解模式是,命令介绍.命令参数格式.命令参数.命令常用参数示例.由于linux命令较多,我还特意选了 ...

最新文章

  1. centos设置mysql为系统服务_CentOS系统如何设置Apache和MYSQL服务开机自动运行
  2. mysql数据库 web asp.net,使用基于asp.net web的应用程序的mysql数据库
  3. Java学习日志(一)
  4. Intellij IDEA Debug 调试技巧
  5. 包含绑定变量的sql进行调优需注意一点
  6. 正则表达式的深入理解
  7. Spark1.4启动spark-shell时initializing失败
  8. Android系统(138)--- Android编译系统
  9. JSF通过EL读取List中的值
  10. DefaultKeyedVector和KeyedVector用法
  11. docker 命令随笔
  12. 是时候抛弃 Svelte、React 和 VUE 了吗?
  13. 80psi等于多少kpa_压力单位换算(如psi)
  14. 用阳光心态去实现快乐工作
  15. textureview 放大缩小的坑
  16. str(n)cpy的注意事项以及memset的简单使用
  17. 视觉SLAM前端——PnP
  18. 计算机发展历程结绳记事,结绳记事与计算机
  19. C++ 实现 Matrix (矩阵)类
  20. 【Cocos2dx】飘字特效与碰撞检测

热门文章

  1. 如何安装node.js
  2. 【WebLogic使用】3.WebLogic配置jndi数据源
  3. 二叉树 Binary Tree
  4. java项目-第61期基于ssm项目在线心理测评系统
  5. 计算机课拔线头检讨书,实验室检讨书.doc
  6. [BLE]低功耗蓝牙介绍
  7. 抓包工具之Fiddler(一)
  8. 初夏,开源魔改一个带击杀音效的电蚊拍!
  9. Spark 安装与配置 (Spark HA 集群部署)
  10. “5G+4G”聚合路由器多链路图传技术巩固安防监控行业