Problème fonction HCPC avec option kk=

291 views
Skip to first unread message

Bertille Simon

unread,
Jun 5, 2014, 5:46:18 AM6/5/14
to factomin...@googlegroups.com
Bonjour,
Après avoir réalisé une ACM à l'aide du code : res.mca<-MCA(data, quali.sup=16:20, ncp=5)
je cherche à appliquer une CAH sur les résultats de cette acm à l'aide de res.hcpc<-HCPC(res.mca,min=3,max=5,graph=TRUE)
J'obtiens alors l'erreur " Erreur : impossible d'allouer un vecteur de taille 218.2 Go " (ma table fait 240 000 lignes et j'ai 20 variables)

On m'a conseillé de rajouter l'option kk= dans la fonction HCPC afin de réaliser une classification k-means avant ma CAH.
Cependant, avec le code res.hcpc<-HCPC(res.mca,min=3,max=5,graph=TRUE,kk=100) j'obtiens toujours la même erreur.

La CAH marche si je corrige le code précédent avec res.hcpc<-HCPC(res.mca$ind$coord,min=3,max=5,graph=TRUE,kk=100)
mais j'ai alors deux problèmes :
- il m'est impossible de décrire mes classes, puisque res.hcpc$desc.var ne marche pas (à cause de res.mca$ind$coord,
R considère que les variables sont les coordonnées, et mes variables de départ age, sexe etc ont disparues).
Comment retrouver les résultats qui normalement se trouvent dans desc.var ?
- étant donné le partitionnement en k-means, seulement mais 100 groupes sont rangés dans les 4 classes de ma CAH
(ce qui est normal), mais comment revenir à un niveau client, c'est à dire quel client appartient à quelle classe de la CAH
(ce qui revient à savoir qui est classé dans les groupes de la k-means en fait)


Pourriez-vous m'aider à résoudre ces deux problèmes ?
Merci

François Husson

unread,
Jun 13, 2014, 8:27:02 AM6/13/14
to factomin...@googlegroups.com
Il est possible d'avoir les classes comme tu le fais:
res.hcpc<-HCPC(res.mca,min=3,max=5,graph=TRUE,kk=100,order=FALSE) ### IMPORTANT: je mets order=FALSE pour conserver l'ordre des individus dans le fichier

On peut ensuite concaténer les données initiales et les classes qui sont dans l'objet res$hcpc$data.clust$clust et j'utilise ensuite la fonction catdes pour caractériser la variable qualitative (qui est la variable de classe) :
tableau <- cbind.data.frame(res$hcpc$data.clust$clust,Donnees)
catdes(tableau,1)

Normalement, tous les individus ont leur classe d'affectation (c'est en tout cas vrai à partir de la version 1.26 de FactoMineR).

FH
Reply all
Reply to author
Forward
0 new messages