Python计算各类距离:实现数据分析中的必备工具
距离度量是在数据分析中非常重要的一个步骤,它能帮助我们比较不同的样本之间的相似性,并将它们按照一定的标准分组聚类。Python作为一门大数据处理和分析语言,自然也提供了很多用于计算不同类型距离的模块和库。在这篇文章中,我们将会讲解Python中如何使用不同的方法来计算欧式距离、曼哈顿距离、余弦距离和汉明距离。
欧式距离是在二维空间里两点之间的距离,也就是我们在初中学的勾股定理。我们可以使用SciPy库来计算欧氏距离:
from scipy.spatial.distance import euclidean
p1 = (1, 2, 3)
p2 = (4, 5, 6)
euclidean_distance = euclidean(p1, p2)
print(euclidean_distance)
曼哈顿距离是指两点在坐标系上的横纵坐标距离之和。我们可以直接通过Python代码来计算:
def manhattan_distance(x, y):
return abs(x[0] - y[0]) + abs(x[1] - y[1])
p1 = (1, 2)
p2 = (4, 5)
manhattan_distance = manhattan_distance(p1, p2)
print(manhattan_distance)
余弦相似度是计算两个向量间的夹角余弦值,它们的点积除以它们的模