参考链接:https://www.cnblogs.com/denny402/p/7027954.html
欧氏距离(Euclidean Distance)
欧氏距离是最易于理解的一种距离计算方法,源自欧氏空间中两点间的距离公式。
(1)二维平面上两点a(x1,y1)与b(x2,y2)间的欧氏距离:
(2)三维空间两点a(x1,y1,z1)与b(x2,y2,z2)间的欧氏距离:
(3)两个n维向量a(x11,x12,…,x1n)与 b(x21,x22,…,x2n)间的欧氏距离:
(4)也可以用表示成向量运算的形式:
python中的实现:
import numpy as np x=np.random.random(10) y=np.random.random(10) #方法一:根据公式求解 d1=np.sqrt(np.sum(np.square(x-y))) #方法二:根据scipy库求解 from scipy.spatial.distance import pdist X=np.vstack([x,y]) #将x,y两个一维数组合并成一个2D数组 ;[[x1,x2,x3...],[y1,y2,y3...]] d2=pdist(X) #d2=np.sqrt((x1-y1)2
+(x2-y2)2
+....)