r - hclust 函数的聚类列表

标签 r hclust

使用 plot(hclust(dist(x)))方法,我能够绘制一个簇树图。有用。但是我想获得所有集群的列表,而不是树图,因为我有大量数据(如 150K 节点)并且情节变得困惑。

换句话说,如果 a b c是一个簇,如果 d e f g是一个集群然后我想得到这样的东西:

1 a,b,c
2 d,e,f,g

请注意,这并不是我想要的“输出”。这只是一个例子。我只是希望能够得到一个簇列表而不是树图它可以是向量、矩阵或只是简单的数字,显示元素属于哪些组。

这怎么可能?

最佳答案

我将使用 R 中可用的数据集来演示如何将树切割成所需数量的部分。结果是一张 table 。

构造一个 hclust 对象。

hc <- hclust(dist(USArrests), "ave")
#plot(hc)

您现在可以根据需要将树切成任意数量的 Twig 。对于我的下一个技巧,我将把树分成两组。您可以使用 k 设置切割次数范围。见 ?cutree以及参数的使用 h这可能对您更有用(请参阅 cutree(hc, k = 2) == cutree(hc, h = 110) )。
cutree(hc, k = 2)
       Alabama         Alaska        Arizona       Arkansas     California 
             1              1              1              2              1 
      Colorado    Connecticut       Delaware        Florida        Georgia 
             2              2              1              1              2 
        Hawaii          Idaho       Illinois        Indiana           Iowa 
             2              2              1              2              2 
        Kansas       Kentucky      Louisiana          Maine       Maryland 
             2              2              1              2              1 
 Massachusetts       Michigan      Minnesota    Mississippi       Missouri 
             2              1              2              1              2 
       Montana       Nebraska         Nevada  New Hampshire     New Jersey 
             2              2              1              2              2 
    New Mexico       New York North Carolina   North Dakota           Ohio 
             1              1              1              2              2 
      Oklahoma         Oregon   Pennsylvania   Rhode Island South Carolina 
             2              2              2              2              1 
  South Dakota      Tennessee          Texas           Utah        Vermont 
             2              2              2              2              2 
      Virginia     Washington  West Virginia      Wisconsin        Wyoming 
             2              2              2              2              2

关于r - hclust 函数的聚类列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6518133/

相关文章:

r - 操作 R 中的 cutree 对象以分割原始数据帧

r - cutree 和 cluster 分支之间的分歧

r - hclust() 和 cutree ...如何在单个 hclust() 中绘制 cutree() 集群

r - as.dendrogram 错误

r - 返回单个条形的堆积条形图

r - DPLYR - 使用列值作为条件将行合并在一起

r - 如何在R中将一行数据分成两行?

css - Shiny Flexdashboard R 中的 Bootswatch 主题

r - 如何在 R 中打印 hclust 对象的行?

r - 如何将十六进制代码传递给 ggplot 中的 geom_hline?