我们知道,如果数组的大小相等,并且需要特定大小,那么每个数组之间的算术运算就会每月进行一次。但是在某些情况下,我们可以擦除不等大小的数据,仍然可以通过在数组中填充形状较小的ndim并以'1'开头的方式增强数组之一来对它们进行算术运算。因此,基本上,广播和数组意味着将其形状更改为任何所需的形状。
ndim比另一个小的数组的形状前面带有“ 1”。
输出形状的每个尺寸中的尺寸是该尺寸中输入尺寸的最大值。
如果输入在特定维度上的大小与输出大小匹配或其值正好为1,则可以将其用于计算。
如果输入的维大小为1,则该维中的第一个数据条目将用于沿该维的所有计算。
以下示例显示了在使用numpy数组进行数组操作期间如何进行广播。
import numpy as np a = np.array([[0.0,0.0,0.0],[10.0,10.0,10.0],[20.0,20.0,20.0],[30.0,30.0,30.0]]) b = np.array([1.0,2.0,3.0]) print 'First array:' print a print '\n' print 'Second array:' print b print '\n' print 'First Array + Second Array' print a + b
输出结果
运行上面的代码给我们以下结果-
First array: [ [ 0. 0. 0.] [ 10. 10. 10.] [ 20. 20. 20.] [ 30. 30. 30.] ] Second array: [ 1. 2. 3.] First Array + Second Array [ [ 1. 2. 3.] [ 11. 12. 13.] [ 21. 22. 23.] [ 31. 32. 33.] ]