计算DF中一个点与R中所有其他点的距离

Calculate distance of one point in DF with all other points in R

我有一个包含大约 10,000 个点的数据框。我想找到第一个点并检查它从第二个点开始的距离,如果距离小于“d”(变量),我从 df 中删除这两个点并用第一个执行 activity点新的df。 这样做直到数据框中只剩下 2 个点。

这需要很多时间。有没有一种省时的方法来做到这一点?

如果您的点存在于 2D space(例如欧几里德)中,那么您可以使用 Cluster package:

library(cluster)
data(agriculture)

##  Dissimilarities using Euclidean metric
d.agr <- daisy(agriculture, metric = "euclidean")
as.matrix(d.agr)

根据您设置的度量(上例中的欧几里得),最终矩阵将为您提供每个点之间的“距离”。