shape和reshape都是数组array中的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shape和reshape都是数组array中的方法相关的知识,希望对你有一定的参考价值。

参考技术A 一个参数为-1时,那么reshape函数会根据另一个参数的维度计算出数组的另外一个shape属性值。

reshape新生成数组和原数组公用一个内存,不管改变哪个都会互相影响。

Numpy中的shape和reshape()

shape是查看数据有多少行多少列
reshape()是数组array中的方法,作用是将数据重新组织

1.shape

import numpy as np
a = np.array([1,2,3,4,5,6,7,8])  #一维数组
print(a.shape[0])  #值为8,因为有8个数据
print(a.shape[1])  #IndexError: tuple index out of range

a = np.array([[1,2,3,4],[5,6,7,8]])  #二维数组
print(a.shape[0])  #值为2,最外层矩阵有2个元素,2个元素还是矩阵。
print(a.shape[1])  #值为4,内层矩阵有4个元素。
print(a.shape[2])  #IndexError: tuple index out of range

2.reshape()  是数组对象中的方法,用于改变数组的形状。
技术图片

形状变化是基于数组元素不能改变的,变成的新形状中所包含的元素个数必须符合原来元素个数。如果数组元素发生变化的时候,就会报错:

技术图片

reshape新生成数组和原数组公用一个内存,不管改变哪个都会互相影响。
技术图片

以上是关于shape和reshape都是数组array中的方法的主要内容,如果未能解决你的问题,请参考以下文章

python中的shape和reshape

python中的shape和reshape

数组:numpy.shape 与numpy.reshape函数

Python Array Reshaping Issue to Array with Shape (None, 192)

numpy.array的shape属性 —— 2018-09-07

numpy