[MCA] [missMDA] Problèmes données manquantes et variables quali.sup

489 views
Skip to first unread message

camille rérolle

unread,
Jun 15, 2013, 6:14:09 PM6/15/13
to factomin...@googlegroups.com
Bonjour,

Tout d'abord merci pour ces outils, d'une puissance et d'une performance qui ne cesse de m'étonner. Je fais actuellement des ACM sur un tableau (9 variables quali dont les 4 premières actives, les 5 dernièeres quali.sup, environ 1000 individus) dont voici un extrait:

1           F 81-90    INC    VP   VV     OUI               VS-           INC   1 à 7 J
2           M 81-90      M    VP   VV     OUI               VS-           INC   1 à 7 J
3           F 65-70      M    VP   VV     OUI               VS-           INC   1 à 7 J
4           F 65-70      M    VP   VV     NON               VS-           INC  8 à 30 J
5           F 71-80      M    DC   VV     NON               VS-      RELATION   1 à 7 J
6           M 65-70      M    VP   VV     OUI               VS-          <NA>   1 à 7 J
7           M 65-70      M  <NA>   VV     OUI               VS-           INC       <NA>
8           F 81-90      M  <NA>   VV     OUI               VS-           DES  8 à 30 J
9           F 65-70      M    VP   VV     OUI               VS-          <NA>   1 à 7 J
10          F 65-70    INC  <NA>   VV     OUI               VS-          <NA>  8 à 30 J
11          F 65-70      M    DV   VV     NON               VS-           AMI   1 à 7 J
12          F 81-90   <NA>    VP   VI     OUI               VS-          <NA> 30 à 90 J

Comme vous le voyait il y a des données manquantes. Mes quatre premières variables servent à définir les axes les suivantes sont des quali.sup.
Donc sans gestion des données manquantes on a une ligne ressemblant à ça:

res<-MCA(tableau, quali.sup=5:9)

J'ai suivis les tutoriaux youtube et lu votre livre ainsi que le Reference manuel de FactoMineR et de missMDA. Je précise que je ne suis pas statisticien...
J'ai donc fait:

tableau<-read.table(fichier, header=TRUE, sep="\t")
tableau<-tableau[,1:9]
complete<-imputeMCA(tableau, ncp=3)
res<-MCA(tableau, tab.disj=complete$tab.disj, quali.sup=5:9,ncp=3)

Et R me met comme erreur:

Erreur dans Z[ind.act, ] <- tab.disj :
  le nombre d'objets à remplacer n'est pas multiple de la taille du remplacement

Voici mes questions:
1)Cette erreur est-elle liée au fait que l'on ne peut pas faire le traitement des données manquantes sur des quali.sup? C'est l'impression que j'ai eu en lisant le détail de la fonction MCA.
2)Passer par le tableau complete$completeObs me parait hasardeux et un raccourci franc!?!
3)C'est surtout sur les quali.sup que j'ai des données manquantes, comment puis-je régler ce problème?

Cordialement.

Camille REROLLE



Julie Josse

unread,
Jun 16, 2013, 10:01:38 PM6/16/13
to factomin...@googlegroups.com
Bonjour,
Oui, la méthode que nous avons développée pour traiter les données manquantes en ACM est dédiée aux variables actives.
Donc quand on a des variables illustratives avec données manquantes, plusieurs solutions sont enviseageables:

1) coder les données manquantes des variables supplémentaire comme une nouvelle catégorie NA.
2) réaliser l'ACM sur les variables supplémentaires seulement pour imputer ce jeu de données puis projeter en supplémentaire ces variables imputées.
3)  vous pouvez aussi imputer les données manquantes des variables illustratives en réalisant l'ACM sur toutes les varaibles (actives et illustratives). Puis vous concaténer votre tableau de données incomplet comprenant les variables actives et ce tableau de données complétés de variables illustratives et réaliser votre analyse.
Mais, si vous faites ça, quand vous allez projeter ces variables en supplémentaire sur votre ACM, les liaisons seront "artificiellement" plus élevées (car vous avez prévu les valeurs manquantes des variables illustratives en utilisant aussi les variables actives).

Je pencherai pour la solution 1 ou 2,
Bien cordialement,
J. Josse


2)Passer par le tableau complete$completeObs me parait hasardeux et un raccourci franc!?!
3)C'est surtout sur les quali.sup que j'ai des données manquantes, comment puis-je régler ce problème?

Cordialement.

Camille REROLLE



--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes FactoMineR users.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse factominer-use...@googlegroups.com.
Pour plus d'options, visitez le site https://groups.google.com/groups/opt_out .
 
 

camille rérolle

unread,
Jun 17, 2013, 4:47:51 AM6/17/13
to factomin...@googlegroups.com
Bonjour,

Merci pour la rapidité de votre réponse. J'ai déjà essayé la solution 1. Je vais essayer la solution 2. Si j'ai bien compris, je fais l'ACM sur les données supplémentaires seules, je remplace dans mon tableau complet de données par complete$completeObs pour les quali.sup. Puis je refais l'ACM sur le nouveau tableau obtenu (c'est pas très clair dans ma tête...).

Cordialement.

Camille REROLLE

Julie Josse

unread,
Jun 17, 2013, 8:55:04 PM6/17/13
to factomin...@googlegroups.com
Le 17/06/2013 10:47, camille rérolle a écrit :
Bonjour,

Merci pour la rapidité de votre réponse. J'ai déjà essayé la solution 1. Je vais essayer la solution 2. Si j'ai bien compris, je fais l'ACM sur les données supplémentaires seules,
Oui, vous récupérer ce tableau de données complété. Vous le concaténez à votre tableau de données de variables actives (qui lui à quelques données manquantes).

je remplace dans mon tableau complet de données par complete$completeObs pour les quali.sup. Puis je refais l'ACM sur le nouveau tableau obtenu (c'est pas très clair dans ma tête...).
Oui, vous faite ensuite l'acm en utilisant imputeMCA sur votre nouveau tableau (car il y a quelques NA dans vos données actives mais plus dans les variables supplémentaires)

Julie.
Reply all
Reply to author
Forward
0 new messages