2

可能重复:
映射应用程序的聚类算法

我有一个无序的位置列表(包含它们的坐标)。我知道使用Haversine 公式来计算两点之间的距离。但是我看过的集群解决方案说我需要先订购列表。位置的正确顺序是什么?我想对彼此相距 1 米以内的所有位置进行聚类(即将所有位置放入单个 clusteredLocation 对象),如果不先排序,这是否可行?

4

1 回答 1

4

实际上,我所知道的所有算法都不需要对点进行排序。这在某种程度上会破坏聚类分析的整个目的。但也许您更多地考虑 web2.0 类型的聚合?

看看 k-means、single-link 和 DBSCAN。维基百科上的所有内容都有很好的描述,中心文章集群分析。这些都不需要订购您的积分。

请注意,Haversine 距离不适用于 k-means 或平均链接聚类,除非您找到一种智能方法来计算最小化方差的均值。如果您有经纬度坐标的 -180/+180 环绕,请不要使用算术平均值。单联动、全联动、DBSCAN、OPTICS 都应该没问题。

于 2012-06-18T16:46:25.517 回答