在不更改数据的情况下为数组赋予新的形状。

参数:a: : array_like

要重塑的数组。

newshape: : int 或 tuple of ints

新形状应与原始形状兼容。如果是整数,则结果将是该长度的一维数组。一种形状尺寸可以为-1。在这种情况下,该值是根据数组的长度和其余维来推断的。

order: : {‘C’, ‘F’, ‘A’}, 可选参数

使用此索引顺序读取a的元素,并使用此索引顺序将元素放入重新排列的数组中。 ‘C’表示使用C-like索引顺序读取/写入元素,最后一个轴索引更改最快,回到第一个轴索引更改最快。 ‘F’表示使用Fortran-like索引顺序读取/写入元素,第一个索引变化最快,最后一个索引变化最慢。请注意,‘C’和‘F’选项不考虑基础数组的内存布局,仅参考索引的顺序。 ‘A’表示如果a在内存中是连续的,则按Fortran-like索引顺序读取/写入元素,否则为C-like顺序。

返回值:reshaped_array: : ndarray

如果可能的话,这将是一个新的视图对象。否则,它将是副本。注意,不能保证返回数组的内存布局(C或Fortran连续)。

注意:

在不复制数据的情况下,并非总是可以更改数组的形状。如果希望在复制数据时引发错误,则应将新形状分配给数组的shape属性:

>>> a = np.zeros((10, 2))

# A transpose makes the array non-contiguous

>>> b = a.T

# Taking a view makes it possible to modify the shape without modifying

# the initial object.

>>> c = b.view()

>>> c.shape = (20)

Traceback (most recent call last):

...

AttributeError:incompatible shape for a non-contiguous array

order关键字给出索引排序,以用于从a取值,然后将值放入输出数组。例如,假设您有一个数组:

>>> a = np.arange(6).reshape((3, 2))

>>> a

array([[0, 1],

[2, 3],

[4, 5]])

您可以将重塑看作是首先对数组进行碎片处理(使用给定的索引顺序),然​​后使用与碎片处理相同的索引顺序将碎片数组中的元素插入到新数组中。

>>> np.reshape(a, (2, 3)) # C-like index ordering

array([[0, 1, 2],

[3, 4, 5]])

>>> np.reshape(np.ravel(a), (2, 3)) # equivalent to C ravel then C reshape

array([[0, 1, 2],

[3, 4, 5]])

>>> np.reshape(a, (2, 3), order='F') # Fortran-like index ordering

array([[0, 4, 3],

[2, 1, 5]])

>>> np.reshape(np.ravel(a, order='F'), (2, 3), order='F')

array([[0, 4, 3],

[2, 1, 5]])

例子:

>>> a = np.array([[1,2,3], [4,5,6]])

>>> np.reshape(a, 6)

array([1, 2, 3, 4, 5, 6])

>>> np.reshape(a, 6, order='F')

array([1, 4, 2, 5, 3, 6])

>>> np.reshape(a, (3,-1)) # the unspecified value is inferred to be 2

array([[1, 2],

[3, 4],

[5, 6]])

python中reshape_python numpy reshape用法及代码示例相关推荐

  1. python中weekday_Python calendar firstweekday()用法及代码示例

    日历模块允许输出类似于程序的日历,并提供与日历相关的其他有用功能. "日历"模块中定义的函数和类使用理想化的日历,当前的公历日历在两个方向上都无限期扩展. 在Python中,cal ...

  2. Python中的numpy.reshape用法

    用法一:np.reshape(a,b),将数组重构成a*b的数组 用法一:np.reshape(a,b),将数组重构成a*b的数组>>> a = np.arange(6).resha ...

  3. python中perf_counter_Python time.perf_counter()用法及代码示例

    由于时间模块提供了各种与时间有关的功能.因此,有必要导入时间模块,否则会出错,因为时间模块中存在perf_counter()的定义. perf_counter()函数始终以秒为单位返回时间的浮点值.返 ...

  4. python math.sinh_Python numpy.sinh()用法及代码示例

    numpy.sinh(x [,out])= ufunc'sin'):此数学函数可帮助用户计算所有x(作为数组元素)的双曲正弦值. 等效于1/2 *(np.exp(x)-np.exp(-x))或-1j ...

  5. python numpy allclose用法及代码示例

    python numpy allclose用法及代码示例 用法: numpy.allclose(a, b, rtol=1e-05, atol=1e-08, equal_nan=False) 如果两个数 ...

  6. python中squeeze函数_Python numpy.squeeze()用法及代码示例

    当我们要从数组形状中删除一维条目时,将使用numpy.squeeze()函数. 用法: numpy.squeeze(arr, axis=None ) 参数: arr :[数组]输入数组. axis : ...

  7. python中numpy.mean_Python numpy.mean()用法及代码示例

    numpy.mean(arr,axis = None):计算沿指定轴的给定数据(数组元素)的算术平均值(平均值). 参数: arr :[数组]输入数组. axis :我们要沿其计算算术平均值的[int ...

  8. python中的scaler_Python preprocessing.MaxAbsScaler方法代码示例

    本文整理汇总了Python中sklearn.preprocessing.MaxAbsScaler方法的典型用法代码示例.如果您正苦于以下问题:Python preprocessing.MaxAbsSc ...

  9. python中string.digits_Python string.hexdigits方法代码示例

    本文整理汇总了Python中string.hexdigits方法的典型用法代码示例.如果您正苦于以下问题:Python string.hexdigits方法的具体用法?Python string.he ...

最新文章

  1. 发送意图到浏览器以打开特定的URL [重复]
  2. 网易云易盾与A10 Networks达成战略合作 携手打造抗DDoS攻击的解决方案
  3. 使用Axure RP原型设计实践05,了解公式
  4. python爬虫脚本ie=utf-8_Python反爬虫伪装浏览器进行爬虫
  5. 在.NET中excel导出方法汇总(收集)
  6. php充值注入,PHP注入一路小跑
  7. CVE-2020-1472复现与完整利用
  8. PX4避障和轨迹规划(3DVFH*)
  9. Vue:Vue项目中引入第三方库报错Unexpected token ‘<‘
  10. json文件下载--防止chrome直接打开方案
  11. opencv之银行卡号识别
  12. VS 反编译工具 ildasm
  13. Unity3d模型导入都需要注意哪些事项?
  14. ArcGIS-云南滇池+抚仙湖流域地形图制作及使用图层下载(shp+dem)
  15. Git 工具 - 贮藏与清理
  16. Python字符串常规操作
  17. HyperLynx(二十七)电源完整性之AC去耦仿真实例(二)
  18. Java权限管理|基于springBoot+springSecurity+jwt实现前后端分离用户权限认证
  19. CTF MISC图片隐写简单题学习思路总结(持续更新)
  20. python和c++学哪个比较好

热门文章

  1. tornado 重定向404
  2. 实用Redis操作类
  3. C++ 类的成员函数指针 ( function/bind )
  4. sql server 中DateName()函数及DatePart()函数
  5. linux 乌班图 lnmp环境搭建
  6. Ubuntu中开启MySQL远程访问功能,并将另一个数据库服务器中的数据迁移到新的服务器中...
  7. [转]DotNet C#开源资源汇总
  8. 水晶報表:金額轉換大寫12/8
  9. Vue 学习笔记(3)路由的基本使用 结合 SpringBoot
  10. 小程序入门学习20--springboot之集成mybatis