https://docs.scipy.org/doc/numpy/user/basics.broadcasting.html
广播 Broadcasting
执行算术运算时使用不同形状的数组
广播规则
- 如果两个数组的维度数不相同,那么小维度数组的形状将会在最左边补 1。
- 如果两个数组的形状在任何一个维度上都不匹配,那么数组的形状会沿着维度为 1 的维度扩展以匹配另外一个数组的形状。
- 如果两个数组的形状在任何一个维度上都不匹配并且没有任何一个维度等于 1,那么会引发异常。
例子
1 | import numpy as np |
1 | x2 = np.ones((3,3)) + np.arange(3) |
1 | x3 = np.ones((3,1)) + np.arange(3) |
1 | # 2维数组和1维数组相加 |