R 中的聚类分析:K 均值中的 Elbow 方法
Cluster Analysis in R: Elbow Method in K-means
我正在使用 R 包 fviz_nbclust 对我的数据集实施肘法。此方法将通过从 1.....k 改变 K 来计算每个簇的总和内的总数。例如肘法建议K=2。假设我们这里有两个单独的 K-means 的不同结果。有没有办法找出肘部方法计算的是哪个wss?有没有一种可能的方法来查看使用 K=2 的聚类中使用的肘部方法的 K 均值结果?
可能有更优雅的方法,但您可以简单地向集群函数添加范围外赋值,例如:
l <- list()
f <- function(...) {
km <- kmeans(...)
l[[nrow(km$centers)]] <<- km
km
}
fviz_nbclust(df, f, method = "wss", k.max = 10)
然后只需索引 l[[optimal nr of clusters]]
即可检索模型
我正在使用 R 包 fviz_nbclust 对我的数据集实施肘法。此方法将通过从 1.....k 改变 K 来计算每个簇的总和内的总数。例如肘法建议K=2。假设我们这里有两个单独的 K-means 的不同结果。有没有办法找出肘部方法计算的是哪个wss?有没有一种可能的方法来查看使用 K=2 的聚类中使用的肘部方法的 K 均值结果?
可能有更优雅的方法,但您可以简单地向集群函数添加范围外赋值,例如:
l <- list()
f <- function(...) {
km <- kmeans(...)
l[[nrow(km$centers)]] <<- km
km
}
fviz_nbclust(df, f, method = "wss", k.max = 10)
然后只需索引 l[[optimal nr of clusters]]
即可检索模型