返回顶部
首页 > 资讯 > 后端开发 > Python >python中reshape函数用法详解
  • 716
分享到

python中reshape函数用法详解

pythonnumpy开发语言 2023-10-03 07:10:52 716人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

python中reshape函数用法详解 reshape函数 reshape函数是Numpy库中的一个函数,可以用于改变一个数组的形状,例如将一个二维数组转换成一个三维数组。 import numpy

python中reshape函数用法详解

reshape函数
reshape函数是Numpy库中的一个函数,可以用于改变一个数组的形状,例如将一个二维数组转换成一个三维数组。

import numpy as np# 创建一个二维数组,形状为(4, 6)a = np.array([[1, 2, 3, 4, 5, 6],              [7, 8, 9, 10, 11, 12],              [13, 14, 15, 16, 17, 18],              [19, 20, 21, 22, 23, 24]])# 将二维数组a转换成一个三维数组,形状为(2, 3, 4)b = np.reshape(a, (2, 3, 4))print(a.shape)    # 输出(4, 6)print(b.shape)    # 输出(2, 3, 4)print(b)

程序运行结果:

下面是reshape函数的具体实现细节:

numpy.reshape(array, newshape, order='C')
  • 其中,array表示要改变形状的数组,newshape表示新的形状,order表示元素在新数组中的存储顺序(可选,默认为’C’,即按行存储)。
  • 当newshape中的元素之积与原数组中的元素之积不相等时,会抛出ValueError异常(这当然不行了,空着的或者多出来的没办法处理);当newshape中的元素之积与原数组中的元素之积相等时,reshape函数将按照order参数指定的顺序将原数组中的元素重新排列,生成一个新的数组。(拿上面代码中的例子来说就是4X6=2X3X4)

该函数具体实现如下:

  1. 首先,根据newshape中的元素构建一个新的空数组,用于存储重排后的元素。
  2. 然后,按照order参数指定的顺序,将原数组中的元素逐个复制到新数组中。常用的存储顺序有’C’(按行存储)和’F’(按列存储)两种。
  3. 最后,返回新数组。

reshape函数可以用于改变多维数组的形状,例如将一个二维数组转换成一个三维数组,或将一个三维数组转换成一个二维数组。但需要注意的是,reshape函数不会改变数组中的元素数量和数据类型,只会改变数组的形状。
总之,reshape函数是一个非常实用的函数,可以用于将一个数组转换成任意形状的数组。在使用reshape函数时,需要注意保证newshape中的元素之积与原数组中的元素之积相等,以确保重排后的数组不会丢失元素。

来源地址:https://blog.csdn.net/change_xzt/article/details/129999062

--结束END--

本文标题: python中reshape函数用法详解

本文链接: https://lsjlt.com/news/422939.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作