使用数组X:
X = rand.rand(10, 2)
X
Out[71]:
array([[0.52083426, 0.96117202],
[0.84453385, 0.74732011],
[0.53969213, 0.58675117],
[0.96525531, 0.60703425],
[0.27599918, 0.29627351],
[0.16526694, 0.01563641],
[0.42340148, 0.39488152],
[0.29348817, 0.01407982],
[0.1988424 , 0.71134195],
[0.79017554, 0.60595997]])
我有一个计算:
(X[:,np.newaxis,:] - X[np.newaxis,:,:]) ** 2
产生一个形状为(10,10,2)的数组
参考这本书,总和为:
np.sum((X[:,np.newaxis,:] - X[np.newaxis,:,:]) ** 2, axis=-1)
在numpy中如何对-1轴求和。
使用轴0和轴1会产生相同的结果。