如何在数据框的单独列中添加群集ID?

时间:2018-06-14 11:53:02

标签: r hclust

我用hclust生成了一个树状图并将其切成两个簇。我从图中知道哪一行对应哪个簇。我想要做的是在数据框中创建一个单独的列,该列将包含元素" class-1"如果该行对应于第一个簇并且将包含元素" class-2"如果对应第二个集群。

1 个答案:

答案 0 :(得分:2)

如果没有示例数据集,我将使用内置的USArrests 如果您使用标签factor"class-1"创建一个类"class-2"的列,则R会自动将它们分配给值12

hc <- hclust(dist(USArrests), "ave")    # taken from the help page ?hclust
memb <- cutree(hc, k = 2)               #

res <- cbind(USArrests, Class = factor(unname(memb), labels = c("class-1", "class-2")))
head(res)
#           Murder Assault UrbanPop Rape   Class
#Alabama      13.2     236       58 21.2 class-1
#Alaska       10.0     263       48 44.5 class-1
#Arizona       8.1     294       80 31.0 class-1
#Arkansas      8.8     190       50 19.5 class-2
#California    9.0     276       91 40.6 class-1
#Colorado      7.9     204       78 38.7 class-2