使用 SciPy 计算曼哈顿距离
scipyscientific computingprogramming
曼哈顿距离,也称为城市街区距离,计算为两个向量之间的绝对差之和。它主要用于描述均匀网格上的对象的向量,例如城市街区或棋盘。以下是在 n 维空间中计算曼哈顿距离的通用公式 −
$$\mathrm{D =\sum_{i=1}^{n}|r_i-s_i|}$$
这里,
si 和 ri 是数据点。
n 表示 n 空间。
SciPy 为我们提供了一个名为 cityblock 的函数,该函数返回两点之间的曼哈顿距离。让我们看看如何使用 SciPy 库计算两点之间的曼哈顿距离−
示例
# 导入 SciPy 库 from scipy.spatial import distance # Defining the points A = (1, 2, 3, 4, 5, 6) B = (7, 8, 9, 10, 11, 12) A, B # Computing the Manhattan distance manhattan_distance = distance.cityblock(A, B) print('Manhattan Distance b/w', A, 'and', B, 'is: ', manhattan_distance)
输出
Manhattan Distance b/w (1, 2, 3, 4, 5, 6) and (7, 8, 9, 10, 11, 12) is: 36