簡體   English   中英

如何根據樹狀圖中形成的簇將 hclust 的 label 放入表中

[英]How can we put label of hclust in table according to clusters formed in dendogram

我有一個具有許多葉節點/標簽的集群的樹狀圖如何根據使用 R 形成的集群將 hclust 的這些標簽逐行放在表中

我相信更直接的方法是使用cutree (而不是通過 rect.dendrogram 使用 go):

> d1 <- USArrests[1:10,]
> d1 <- USArrests[1:10,]
> hc <- hclust(dist(d1))
> hcc <- cutree(hc, k = 3)
> hcc
    Alabama      Alaska     Arizona    Arkansas  California 
          1           1           2           1           2 
   Colorado Connecticut    Delaware     Florida     Georgia 
          1           3           1           2           1 
> data.frame(d1, hcc)
            Murder Assault UrbanPop Rape hcc
Alabama       13.2     236       58 21.2   1
Alaska        10.0     263       48 44.5   1
Arizona        8.1     294       80 31.0   2
Arkansas       8.8     190       50 19.5   1
California     9.0     276       91 40.6   2
Colorado       7.9     204       78 38.7   1
Connecticut    3.3     110       77 11.1   3
Delaware       5.9     238       72 15.8   1
Florida       15.4     335       80 31.9   2
Georgia       17.4     211       60 25.8   1

專業提示:如果您使用 dendrogram 而不是 hclut,則可以使用dendextend package 以獲得樹狀圖的cutree。

您需要訪問存儲在rect.hclust object 中的數據,如下所示:

obj <- rect.hclust(my_matrix, k = n)
str(obj)

通過使用str檢查obj ,您將找到按集群分組的所有變量的列表。 您可以將它們導出為表格形式,例如使用lapply

labels <- lapply(obj, paste0, collapse = ",")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM