0.4 广播机制
0.4.1 什么是广播
我们都知道,Numpy中的基本运算(加、减、乘、除、求余等等)都是元素级别的,但是这仅仅局限于两个数组的形状相同的情况下。
Numpy就是通过广播来进行高速的矢量化运算.
广播, 具有扩散的特点.在数组中的广播,含义就是一个数组在另外一个数组中进行的某种运算的扩散.
#可是大家又会发现,如果让一个数组加1的话,结果是整个数组的结果都会加1,这是什么情况呢?
#形状不一样的时候,可以通过广播机制对数组进行扩散,使得其形状变成一样的
规则1:如果两个数组形状中,只有其中一个维度相同,另一个维度不一致,但是其中一个数组有维度为1,则可以补齐
规则2:如果两个数组的形状在任何一个维度都不匹配,但两个数组都有其中以维度为1,则数组的形状会沿着维度为1的维度扩展,以匹配另外一个数组形状
规则3:如果两个数组的形状在任何一个维度上都不匹配,并且没有任何一个维度等于1,会广播错误。
np.ones((2,3))
0.5 Numpy运算
Numpy 中数组上的算术运算符使用元素级别。最后的结果使用新的一个数组来返回。