Calculate Euclidean Distance within points in numpy array
Consider using scipy.spatial.distance.pdist.
You can do like this.
>>> A = np.array([[1, 2, 3], [4, 5, 6], [10, 20, 30]])>>> scipy.spatial.distance.pdist(A)array([ 5.19615242, 33.67491648, 28.93095228])
But be careful the order of the output distance is (row0,row1),(row0,row2) and (row1,row2).
You can do something like this:
>>> import numpy as np>>> from itertools import combinations>>> A = np.array([[1, 2, 3], [4, 5, 6], [10, 20, 30]])>>> [np.linalg.norm(a-b) for a, b in combinations(A, 2)][5.196152422706632, 33.674916480965472, 28.930952282978865]