使用 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

相关文章