作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在处理 GPS 数据(纬度、经度)。对于基于密度的聚类,我在 R 中使用了 DBSCAN。
就我而言,DBSCAN 的优点:
library(fossil)
dist<- earth.dist(df, dist=T) #df is dataset containing lat long values
library(fpc)
dens<-dbscan(dist,MinPts=25,eps=0.43,method="dist")
MinPts
的不同值和 eps 得到照顾,我还使用了 k 最近邻距离图来获得最佳值
eps
为
MinPts
=25
dbscan
正在做的是去我数据集中的每个点,如果点 p 有
MinPts
在其
eps
邻域它将形成一个集群,但同时它也加入了密度可达的集群(我想这对我来说是一个问题)。
dens$cluster
,但我怎么知道eps
相当.但事实并非如此,因为密度可达dbscan
的优势?OPTICS
是另一种选择,但它会解决我的问题吗?
Note:
有意义的是,我想说更近的点应该在一个集群中。但相距 1 公里或以上的点不应在同一簇中。
最佳答案
DBSCAN 没有声称半径是最大簇大小。
你读过文章吗?它正在寻找任意形状的集群; eps
只是一个点的核心大小;大致用于密度估计的大小;核心点半径内的任何点都将成为集群的一部分。
这使得它本质上是最大值 步长连接密集点。但它们仍可能形成任意形状或大小的密度连接点链。
我不知道你的 R 实现中的集群 0 是什么。我已经尝试过 R 实现,但它比所有其他实现都慢。我不推荐使用 R,有更好的聚类分析工具可用,例如 ELKI .尝试使用您在 ELKI 上的设置运行 DBSCAN,使用 LatLngDistanceFunction 和 sort-tile-recursive 加载的 R-tree 索引。与 R 相比,您会惊讶于它的速度有多快。
OPTICS 正在寻找相同的 密度连接集群类型。您确定这种任意形状的簇是您要找的吗?
恕我直言,你为你的目标使用了错误的方法(你并没有真正解释你想要实现的目标)
如果您想对簇直径进行硬限制,请使用 完全链接层次聚类 .
关于r - 使用 DBSCAN 对 GPS 数据进行聚类,但聚类没有意义(就大小而言),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20856796/
我是一名优秀的程序员,十分优秀!