当前位置:   article > 正文

关于Numpy数组中属性shape的理解_我输入的是一个二维数组numpy.ndarray,然后它的shape是(1,10),我在input设

我输入的是一个二维数组numpy.ndarray,然后它的shape是(1,10),我在input设置为(1,

关于Numpy数组中属性shape的理解

概述:numpy数组都有着shape这一属性,怎么理解这一属性呢?看以下代码:

# 关于numpy中shape参数的深刻理解
p1 = np.array([1, 2, 3])
p2 = np.array([[1], [2]])
p3 = np.array([[[1, 2], [4, 7]], [[3, 5], [5, 4]], [[8, 7], [7, 7]]])
p4 = np.array([[[[1, 2]]], [[[4, 9]]], [[[2, 7]]]])


print(p1.shape) # 输出(3, )
print(p2.shape) # 输出(2, 1)
print(p3.shape) # 输出(3, 2, 2)
print(p4.shape) # 输出(3, 1, 1, 2)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

分析如下:
第一个:(3, )代表p1为一维数组里面有3个元素;
第二个:(2, 1)表示p2一个二维数组,这个二维数组里包含着2个一维数组,而每个一维数组包含着1位元素;
第三个:(3, 2, 2)表示p3为三维数组,这个三维数组里包含着3个二维数组,每个二维数组里包含着2个一维数组,每个一维数组里又包含着2位元素;
第四个:(3, 1, 1, 2)表示p4为一个四维数组,这个四维数组包含着3个三维数组, 这个三维数组里又包含了1个二维数组,这个二维数组里包含着1个一维数组,这个一维数组只包含一个元素。

结论:numpy范围的shape值(x1, x2, …, xn)中,括号里的数字个数代表该数组的维数大小,而里面的具体元素从左到右依次是数组从外到内的维数。既:第一个x代表这个N维数组(假设有N个x)里有x1个N-1维数组,每个N-1维数组里有x2个N-2维数组,以此类推。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号