关于np.subtract.outer()的使用,以下做简单介绍
import numpy as np
a = np.array([5,6,7])
b = np.array([9,12,10])
np.subtract.outer(b,a)
Out[11]:
array([[4, 3, 2],
[7, 6, 5],
[5, 4, 3]])
上述代码或许之前没接触np.subtract.outer()的人会晕住,这是什么情况?似乎没有规律可言,其实是有的
请看,
9 - 5 = 4
9 - 6 = 3
9 - 7 = 2
12 - 5 = 7
12 - 6 = 6
12 - 7 = 5
10 - 5 = 5
10 - 6= 4
10 - 7= 3
你看懂了吗?
用代码来写就是:
其实,上面三行等价于:
b[:,None]-a