矢量化(vectorization)使得你不用编写循环就可以对数据进行批量运算。大小相等的数组之间的任何算术运算都会将运算应用到元素级。
数组和标量运算
import numpy as np
arr = np.array([[1.,2.,3.,4.],[5,6,7,8]])
1/arr
array([[ 1. , 0.5 , 0.33333333, 0.25 ],
[ 0.2 , 0.16666667, 0.14285714, 0.125 ]])
arr*0.5
array([[ 0.5, 1. , 1.5, 2. ],
[ 2.5, 3. , 3.5, 4. ]])
可以看到运算是元素级别的
数组和数组运算
arr*arr
array([[ 1., 4., 9., 16.],
[ 25., 36., 49., 64.]])
arr-arr
array([[ 0., 0., 0., 0.],
[ 0., 0., 0., 0.]])