numpy.reshape()的函数的具体使用

 更新时间:2023年02月10日 09:58:21   作者:熊野君  
本文主要介绍了numpy.reshape()的函数的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

np.reshape()基本用法

常用于矩阵规格变换,将矩阵转换为特定的行和列的矩阵
格式:a1.reshape(x,y,z,…)
注意:将矩阵a1转变成(x, y,z,…)---->一维长度x,二维长度y,三维长度z,…的矩阵。
场景:matlibplot画图时x、y轴需要传入的是一维,可以用reshape()实现;再例如需要将多维的变成行向量或列向量时也经常要用

numpy.reshape(a, newshape, order='C')[source],参数`newshape`是啥意思?

根据Numpy文档(https://docs.scipy.org/doc/numpy/reference/generated/numpy.reshape.html#numpy-reshape)的解释:

newshape : int or tuple of ints

The new shape should be compatible with the original shape. If an integer, then the result will be a 1-D array of that length. One shape dimension can be -1. In this case, **the value is inferred from the length of the array and remaining dimensions**.

大意是说,数组新的shape属性应该要与原来的配套,如果等于-1的话,那么Numpy会根据剩下的维度计算出数组的另外一个shape属性值。

举几个例子或许就清楚了,有一个数组z,它的shape属性是(4, 4)

z = np.array([[1, 2, 3, 4],
          [5, 6, 7, 8],
          [9, 10, 11, 12],
          [13, 14, 15, 16]])
z.shape
(4, 4)

z.reshape(-1)

z.reshape(-1)
array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16])

z.reshape(-1, 1)

也就是说,先前我们不知道z的shape属性是多少,但是想让z变成只有一列,行数不知道多少,通过`z.reshape(-1,1)`,Numpy自动计算出有12行,新的数组shape属性为(16, 1),与原来的(4, 4)配套。

z.reshape(-1,1)
 array([[ 1],
        [ 2],
        [ 3],
        [ 4],
        [ 5],
        [ 6],
        [ 7],
        [ 8],
        [ 9],
        [10],
        [11],
        [12],
        [13],
        [14],
        [15],
        [16]])

z.reshape(-1, 2)

newshape等于-1,列数等于2,行数未知,reshape后的shape等于(8, 2)

 z.reshape(-1, 2)
 array([[ 1,  2],
        [ 3,  4],
        [ 5,  6],
        [ 7,  8],
        [ 9, 10],
        [11, 12],
        [13, 14],
        [15, 16]])

同理,只给定行数,newshape等于-1,Numpy也可以自动计算出新数组的列数。

到此这篇关于numpy.reshape()的函数的具体使用的文章就介绍到这了,更多相关numpy.reshape()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python PyInstaller库基本使用方法分析

    Python PyInstaller库基本使用方法分析

    这篇文章主要介绍了Python PyInstaller库基本使用方法,结合实例形式分析了Python PyInstaller库的功能、安装及相关使用注意事项,需要的朋友可以参考下
    2019-12-12
  • Django websocket原理及功能实现代码

    Django websocket原理及功能实现代码

    这篇文章主要介绍了Django websocket原理及功能实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • python基础 range的用法解析

    python基础 range的用法解析

    这篇文章主要介绍了python基础 range的用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Python通过psd-tools解析PSD文件

    Python通过psd-tools解析PSD文件

    这篇文章主要介绍了Python通过psd-tools解析PSD文件,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-06-06
  • 使用pyecharts生成Echarts网页的实例

    使用pyecharts生成Echarts网页的实例

    今天小编就为大家分享一篇使用pyecharts生成Echarts网页的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Django多进程滚动日志问题解决方案

    Django多进程滚动日志问题解决方案

    这篇文章主要介绍了Django多进程滚动日志问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 从零学python系列之数据处理编程实例(二)

    从零学python系列之数据处理编程实例(二)

    这篇文章主要介绍了python数据处理编程实例,需要的朋友可以参考下
    2014-05-05
  • 简单了解Pandas缺失值处理方法

    简单了解Pandas缺失值处理方法

    这篇文章主要介绍了简单了解Pandas缺失值处理方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Python命令行click参数用法解析

    Python命令行click参数用法解析

    这篇文章主要介绍了Python命令行click参数用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • python中从for循环延申到推导式的具体使用

    python中从for循环延申到推导式的具体使用

    这篇文章主要介绍了python中从for循环延申到推导式的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11

最新评论