如何获得层次统计平均聚类的差异统计>>

问题描述 投票:0回答:1

我基于'平均链接'执行层次聚类分析,在base r中,我使用

dist_mat <- dist(cdata, method = "euclidean")
hclust_avg <- hclust(dist_mat, method = "average")

我想计算间隙统计信息以确定最佳的簇数。我使用“集群”库和clusGap函数。由于我无法通过hclust解决方案,也无法在clusGap函数中指定平均分层聚类,因此我使用以下行:

cluster_fun <- function(x, k) list(cluster = cutree(hclust(dist(x, method = "euclidean"), method="average"), k = k))
gap_stat <- clusGap(cdata, FUN=cluster_fun, K.max=10, B=50)
print(gap_stat)

但是,在这里我无法检查群集解决方案。因此,我的问题是-我可以确定间隙统计量是在与hclust_avg相同的解决方案上计算的吗?

是否有更好的方法?

我基于'平均链接'执行层次聚类分析,在基数r中,我使用dist_mat

r cluster-analysis hierarchical-clustering
1个回答
0
投票

是的,应该相同。在clusGap函数中,它将为您提供的每个k调用cluster_fun,然后按照paper中的描述计算池内簇的平方和之和。这是在clusGap内部调用的代码,它会调用您的自定义函数:

© www.soinside.com 2019 - 2024. All rights reserved.