教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

问答>python+大数据开发>求解:数组广播是什么?

求解:数组广播是什么?

来源传智教育2022年06月20日 14时34分11秒

  数组在进行矢量化运算时,要求数组的形状是相等的。当形状不相等的数组执行算术运算的时候,就会出现广播机制,该机制会对数组进行扩展,使数组的shape属性值一样,这样就可以进行矢量化运算了。下面来看一个例子。

数组广播机制.jpg

  上述代码中,数组arr1的shape是(4,1),arr2的shape是(3,),这两个数组要是进行相加,按照广播机制会对数组arr1和arr2都进行扩展,使得数组arr1和arr2的shape都变成(4,3)。

  下面通过一张图来描述广播机制扩展数组的过程,具体如图2-2所示。

数组的广播机制过程.jpg

  图1-1 数组广播机制

  注意:广播机制实现了对两个或两个以上数组的运算,即使这些数组的shape不是完全相同的,只需要满足如下任意一个条件即可。

  (1)数组的某一维度等长。

  (2)其中一个数组的某一维度为1.

  广播机制需要扩展维度小的数组,使得它与维度最大的数组的shape值相同,以便使用元素级函数或者运算符进行运算。

和我们在线交谈!