首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >聚类地理位置坐标(lat,长对)

聚类地理位置坐标(lat,长对)
EN

Data Science用户
提问于 2014-07-17 09:50:41
回答 9查看 100.7K关注 0票数 66

地理位置聚类的正确方法和聚类算法是什么?

我使用以下代码对地理位置坐标进行聚类:

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt
from scipy.cluster.vq import kmeans2, whiten

coordinates= np.array([
           [lat, long],
           [lat, long],
            ...
           [lat, long]
           ])
x, y = kmeans2(whiten(coordinates), 3, iter = 20)  
plt.scatter(coordinates[:,0], coordinates[:,1], c=y);
plt.show()

使用K-均值进行地理定位聚类是否正确,因为它使用欧几里得距离,而不是Haversine公式作为距离函数?

EN

回答 9

Data Science用户

回答已采纳

发布于 2014-07-17 12:34:11

在这种情况下,K-均值应该是对的。由于k-的意思是只根据物体之间的欧几里德距离进行分组,你将得到彼此接近的位置簇。

要找到最优的簇数,您可以尝试做一个‘肘部’图的群内和的平方距离。可能会有帮助

票数 11
EN

Data Science用户

发布于 2014-07-26 16:04:25

K-均值不是这里最合适的算法。

原因是k均值是为了最小化方差而设计的。当然,这是从统计和信号处理的角度来看的,但您的数据并不是“线性的”。

由于您的数据是纬度、经度格式,所以您应该使用一种可以处理任意距离函数的算法,特别是大地距离函数。分层聚类、PAM、CLARA和DBSCAN是这方面的流行例子。

推荐光学聚类。

当你考虑接近+-180度绕线的点时,k-均值的问题很容易看出。即使你砍了k-意味着使用Haversine距离,在更新步骤中,当它重新计算结果的平均值时,结果将被严重破坏。最坏的情况是,k-均值永远不会收敛!

票数 71
EN

Data Science用户

发布于 2017-05-11 11:31:11

我的答案可能很晚了,但是如果您仍然在处理geo集群,您可能会发现本研究很有趣。比较了两种不同的地理数据分类方法:K均值聚类和潜在类增长模型。

研究中的一幅图片是:

作者的结论是,最终的结果是完全相似的,并且有一些方面的LCGM过高的K-手段。

票数 9
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档