R FactoMineR:返回群集成员资格

时间:2013-02-05 17:14:54

标签: r cluster-analysis hierarchical-clustering

我已经制作了一个HCPC对象,并希望返回一个观察列表以及它们落入的群集。我找不到这样做的命令;有人知道吗?

仅供参考,这是我的工作:

file <- read.csv("file", header=TRUE) 
library(FactoMineR) 
res.mca = MCA(file, graph=FALSE) 
# manually cut tree according to inertia gain 
res.hcpc = HCPC(res.mca, nb.clust=0) 

编辑:可重复的示例:

library(FactoMineR)
data(tea)
res.mca  <- MCA(tea, quanti.sup = 19, quali.sup = 20:36)
res.hcpc <- HCPC(res.mca, nb.clust = 5)

2 个答案:

答案 0 :(得分:2)

输出$data.clust为数据框提供输入数据和一列(最后一列)以及个人所属的群集。

library(FactoMineR)
data(tea)
res.mca  <- MCA(tea, quanti.sup = 19, quali.sup = 20:36)
res.hcpc <- HCPC(res.mca, nb.clust = 5)
res.hcpc$data.clust

请注意,如果您希望个体的顺序与输入数据集中的顺序相同,则应在HCPC中使用参数order=FALSE

res.hcpc <- HCPC(res.mca, nb.clust = 5, order=FALSE)
res.hcpc$data.clust

答案 1 :(得分:0)

虽然这篇文章是3年前写的,但我的回答可以为读者提供帮助。我只是在寻找同样问题的解决方案,因为我使用HCPC进行异常值检测,这是我得到的想法:我从hcpc()发出的数据帧$ data.clust中提取了一个子集,基于字段&#34 ;簇&#34 ;. 异常值&lt; -subset(DHCPC $ data.clust,clust == 4)

我在这里找到答案:how to extract a subset of a data frame based on a condition involving a field?