检索R中的最佳簇数

检索R中的最佳簇数,r,machine-learning,statistics,cluster-analysis,R,Machine Learning,Statistics,Cluster Analysis,我有一些数据,我想根据差距统计来评估最佳聚类数 我阅读了r中的页面,其中给出了以下示例: gs.pam.RU <- clusGap(ruspini, FUN = pam1, K.max = 8, B = 500) gs.pam.RU 我想从中检索集群的数量。但是,与pamk函数相反,pamk函数可以轻松获取此数字,我无法找到使用clusGap获取此数字的方法 然后我尝试使用该函数,但我不知道参数f和SE.f代表什么,也不知道如何从数据矩阵中获取它们 有没有简单的方法来检索这个最佳数量的集

我有一些数据,我想根据差距统计来评估最佳聚类数

我阅读了r中的页面,其中给出了以下示例:

gs.pam.RU <- clusGap(ruspini, FUN = pam1, K.max = 8, B = 500)
gs.pam.RU
我想从中检索集群的数量。但是,与pamk函数相反,pamk函数可以轻松获取此数字,我无法找到使用clusGap获取此数字的方法

然后我尝试使用该函数,但我不知道参数f和SE.f代表什么,也不知道如何从数据矩阵中获取它们


有没有简单的方法来检索这个最佳数量的集群

答案在输出中:

...
 --> Number of clusters (method 'firstSEmax', SE.factor=1): 4
...
这是产生最大值
gap
(在表的第4行)的簇数

maxSE(…)
的参数分别是
gap
SE.sim

with(gs.pam.RU,maxSE(Tab[,"gap"],Tab[,"SE.sim"]))
# [1] 4
有时绘制
gap
,以查看集群选项的差异有多大是很有用的:

plot(gs.pam.RU)
gap.range <- range(gs.pam.RU$Tab[,"gap"])
lines(rep(which.max(gs.pam.RU$Tab[,"gap"]),2),gap.range, col="blue", lty=2)
绘图(gs.pam.RU)
间隙范围
plot(gs.pam.RU)
gap.range <- range(gs.pam.RU$Tab[,"gap"])
lines(rep(which.max(gs.pam.RU$Tab[,"gap"]),2),gap.range, col="blue", lty=2)