首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DBSCAN噪声点

DBSCAN噪声点
EN

Stack Overflow用户
提问于 2021-04-12 00:52:08
回答 1查看 193关注 0票数 0

我正在开发一种基于地理距离匹配人员的算法,为此,我使用DBSCAN算法。

这是我在运行代码后得到的输出

代码语言:javascript
运行
复制
db_e= dbscan::dbscan(eng2_scaled, eps= 0.5, minPts= 3)


DBSCAN clustering for 10 objects.
Parameters: eps = 0.5, minPts = 3
The clustering contains 1 cluster(s) and 7 noise points.

0 1 
7 3 

Available fields: cluster, eps, minPts

有没有一种方法可以强制噪声点(在这个算法中,是住得更远的个体)到我的集群中,而不需要手动将它们放在集群中?

这是我正在使用的代码

代码语言:javascript
运行
复制
               id       long         lat
 [1,] -1.08661792  0.6479382  0.29786292
 [2,] -0.92913706  0.6606378  0.27583940
 [3,] -0.77165620 -0.0262808  0.01227102
 [4,] -0.61417534  0.6804854  0.17569930
 [5,] -0.45669449  0.7748932 -1.45946459
 [6,] -0.14173277 -2.3581307  0.07462387
 [7,]  0.01574809 -0.5405659 -0.84936268
 [8,]  0.80315237  0.5367247 -1.25770012
 [9,]  1.43307580  0.4708911  0.80020084
[10,]  1.74803752 -0.8465929  1.93003003
EN

回答 1

Stack Overflow用户

发布于 2021-04-12 04:06:15

首先要做的是了解是否应该有更多的集群,所以让我们看一下数据的基本曲线图。

代码语言:javascript
运行
复制
plot(eng2_scaled[,2:3])

很容易看出为什么3个点(在中心右侧)聚集在一起,但没有其他的原因。你可以想象右下角的两个点属于一起。为了实现这一点,您必须将minPts设置为2。

代码语言:javascript
运行
复制
library(dbscan)
db_e = dbscan(eng2_scaled[,2:3], eps= 0.5, minPts= 2)
plot(eng2_scaled[,2:3], pch=20, col=db_e$cluster+1)

除此之外,很难看出为什么这些点应该在一个集群中。但只有10分。为什么不直接手工分组呢?

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

https://stackoverflow.com/questions/67047740

复制
相关文章

相似问题

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