如何在 R 中生成层次聚类的碎石图?

2024-02-21

我使用plot()函数生成了树状图,并使用hclust()进行层次聚类。我希望为此生成一个碎石图。有什么建议么?


虽然有点晚了,但我已经有了答案。

# creating a dissimilarity matrix
res.dist <- dist(USArrests, method = "euclidean")

# creating an object of class "hclust"
res.hc <- hclust(d = res.dist, method = "ward.D2")

正如可以在hclust 的文档 https://www.rdocumentation.org/packages/stats/versions/3.5.1/topics/hclust,它是一个值列表。您可以使用以下命令检查它们

View(res.hc)

现在,可变高度正是碎石图所需的。以下代码生成屏幕图:

> ggplot(res.hc$height %>%
+            as.tibble() %>%
+            add_column(groups = length(res.hc$height):1) %>%
+            rename(height=value),
+        aes(x=groups, y=height)) +
+     geom_point() +
+     geom_line()

基本上,您所做的就是绘制多个组的高度。 (它可能不是很优雅,我很高兴听到更短的版本来产生相同的结果)。

我的结果是:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 R 中生成层次聚类的碎石图? 的相关文章

随机推荐