我有距离矩阵mdist
(187x187 项)。我需要根据每个项目的最小值进行集群。我数过那些最小值:
mins = list()
for (i in (1:nrow(mdist))) {
md = min(mdist[i,-c(i)])
mins <- rbind.data.frame(mins, list(id=i, dist=md))
}
当我检查最大的整体max(mins$dist)
时,它是 4。
现在我希望将这些项目分组。虽然我将阈值设置为 5,但我希望得到一个集群。
hc <- hclust(as.dist(mdist), method="complete")
x <- cutree(hc, h=5)
但是当我申请时length(unique(x))
,它需要 103 个集群。
我想我做错了方法还是什么?如何强制簇数低于此类矩阵的最大值?