手动计算 Manhattan 距离
虽然欧几里得距离很常见,但它只在 2 或 3 维数据中扩展得较好。在更高维的情况下,您可以改用 Manhattan 距离。它在包含大量分类特征的数据集上表现尤为出色。
请用 NumPy 手动计算该距离,NumPy 已按常用别名 np 载入。
本练习是课程的一部分
Python 中的异常检测
练习说明
- 计算
M与N各元素之间的绝对差。 - 将这些差值求和,得到最终的 Manhattan 距离。
交互式实操练习
通过完成这段示例代码来试试这个练习。
M = np.array([14, 17, 18, 20, 14, 12, 19, 13, 17, 20])
N = np.array([63, 74, 76, 72, 64, 75, 75, 61, 50, 53])
# Subtract M from N and find the absolute value
abs_diffs = ____
# Calculate the final manhattan distance
manhattan_dist_MN = ____
print(manhattan_dist_MN)