R:从hclust绘制较小的簇

myn*_*EFF 7 r

我有250个对象,我曾经h <- hclust(distance.matrix, method = "single")获得一个hclust对象.如果我绘制树形图h,它只是一团糟,因为有太多的对象,标签只是被压扁在一起.

假设我对特定的群集感兴趣

现在,我知道我们可以cutree通过指定所需的组数来将一棵树(例如,由hclust产生的树)切割成若干组.

但是,我如何分别获得R中那些较小的簇群的树形图?

sgi*_*ibb 5

您可以将hclust对象转换为a dendrogram并使用cut(?cut.dendrogram有关详细信息,请参阅参考资料):

hc <- hclust(dist(USArrests), "ave")
plot(hc)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

## cut at height == 100
d <- cut(as.dendrogram(hc), h=100)
## cut returns a list of sub-dendrograms
d
#$upper
#'dendrogram' with 2 branches and 2 members total, at height 152.314 
#
#$lower
#$lower[[1]]
#'dendrogram' with 2 branches and 16 members total, at height 77.60502 

#$lower[[2]]
#'dendrogram' with 2 branches and 34 members total, at height 89.23209 

par(mfrow=c(1, 2))
plot(d$lower[[1]])
plot(d$lower[[2]])
par(mfrow=c(1, 1))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述