基于R

基于R,r,cluster-analysis,latitude-longitude,k-means,geo,R,Cluster Analysis,Latitude Longitude,K Means,Geo,我有一套关于一个城市的长点数。现在,我想根据500m半径或1km半径,使用R对这些点进行聚类。准确地说,我想找出质心,以及该特定簇500m半径内的所有点 附言: 1.我用过k的方法。但我不能用K-均值来确定半径。 2.我尝试在R中使用Leadercluster包。在我将簇映射到点,并找到距质心的距离后,我发现在Leadercluster包中有许多标记为簇的点超过指定半径 我的问题与此链接中的问题完全相同: 我正在寻找一个解决方案 请建议一种基于半径对这些点进行聚类的好方法 提前感谢使用分层聚类

我有一套关于一个城市的长点数。现在,我想根据500m半径或1km半径,使用R对这些点进行聚类。准确地说,我想找出质心,以及该特定簇500m半径内的所有点

附言:

1.我用过k的方法。但我不能用K-均值来确定半径。 2.我尝试在R中使用Leadercluster包。在我将簇映射到点,并找到距质心的距离后,我发现在Leadercluster包中有许多标记为簇的点超过指定半径

我的问题与此链接中的问题完全相同: 我正在寻找一个解决方案

请建议一种基于半径对这些点进行聚类的好方法


提前感谢

使用分层聚类

使用最大连杆,在所需高度切割,可以确保每个簇中的最大距离


使用质心链接时,到中心的距离应该是有界的,但这可能仅限于欧几里德距离?

您可以围绕这些点绘制圆,然后将它们与gUnion合并。新多边形将是点彼此靠近的簇。获取质心的一个简单方法是取属于每个新多边形的点的lat和lon的平均值。

我对R不熟悉。你能告诉我怎么做吗。我有经纬度点,我猜用欧几里得距离来限制距离是错误的。我不怎么用R,它可能会很慢。你需要哈弗森距离。我也尝试使用DBSCAN,它需要距离矩阵作为输入。有没有一种方法可以将空间点作为输入a..当我增加数据点的数量时,比如说1个空白点,它必须形成约28GB的1L x 1L矩阵,但由于内存限制而失败是的,距离矩阵可能太贵了。据我所知,唯一支持Haversine和加速索引的DBSCAN版本是ELKI中的版本,而不是R中的版本。它速度非常快。我会在大量数据上这样做。对于一个城市,我有大约20个AKH定位点。通过聚类,我想知道在500米半径范围内哪个聚类密度最大。我希望算法能够以这样的方式选取质心点,该簇在该范围内有最大可用点。我做了类似的事情,在世界各地聚集了数十万个点。我发现基于距离的聚类算法花费的时间太长(因为500m的lat-lon在任何地方都不一样,需要计算)。将其转换为库(sp)类的点和多边形,然后使用它们的函数在我的例子中证明是最快的。如果有两个小集群在附近,另一个大集群在更远的地方,那么分层集群也可能很棘手。当然可以。也许这会有帮助:。我用R-code.KV回答。你找到你问题的答案了吗?你能发布steps&r代码吗+1.