R 中的层次聚类

Hiearchical Clustering in R

我想在 R 中执行层次聚类,但我在处理结果时遇到了一些问题。我正在使用 agnes 函数,它为我提供树状图和凝聚系数等。现在,我如何找到最重要的集群?例如,我怎样才能得到集群编号 X 中集群的观察结果?我想得到每个簇内的点。

非常感谢!

您使用了层次聚类。你得到的是层次结构,而不是集群。如果你想看到集群,你必须决定有多少集群或等效地,你想在哪里砍树。然后,您可以使用 cutree 将观察结果分组到集群中。这是一个简单的例子。由于您没有提供任何数据,我将以内置的虹膜数据为例。

library(cluster)
AG = agnes(iris[,1:4])

## use the hierarchy to make 3 clusters
cutree(AG, 3)

  [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 [38] 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
 [75] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3
[112] 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3
[149] 3 2