python - 点之间的欧几里得距离

标签 python numpy euclidean-distance

我在 numpy 中有一个点数组:

points = rand(dim, n_points)

我想:

  1. 计算某个点与所有其他点之间的所有l2范数(欧氏距离)
  2. 计算所有成对距离。

并且最好是所有 numpy 而不是 for。怎么做到的?

最佳答案

如果您愿意使用 SciPy,scipy.spatial.distance 模块(函数 cdist 和/或 pdist)可以正是您想要的,所有循环都在 C 中完成。您也可以通过广播来完成,但会有一些额外的内存开销。

关于python - 点之间的欧几里得距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2483100/

相关文章:

python - Cython:融合类型的使用无效,类型不能被专门化

javascript - 您可以通过 python 或 javascript 使用机器人自动化从页面检索重定向 URL 吗?

python - 更改 QTreeWidget 中复选框的样式而不影响 Maya 中的复选标记?

python - Fail2ban Regex - 不匹配日志文件中的行

r - R中两个3D点之间的距离

python - 利用L2距离差进行人脸识别

objective-c - 计算两个 CGPoint 之间距离的最快方法?

python - 抽象属性(不是属性)?

python - 如何对位于两个缺失值之间的列表元素进行子集化?

python - 如何按行对矩阵进行排序 - Python