FAMD (analyse factorielle de données mixtes)

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Anthony Clerc
Messages : 1
Enregistré le : 30 Aoû 2023, 08:19

FAMD (analyse factorielle de données mixtes)

Messagepar Anthony Clerc » 01 Sep 2023, 17:18

Bonjour,

Je travaille actuellement sur un jeu de données acquis sur des patients et des sujets sains, contenant 4 variables qualitatives (Group, Sex, Etiology et Clinical state) et 6 variables quantitatives (Age, CRS score, Visual score, Objects, Physician et Mirror). Mon but est d’utiliser l’analyse factorielle de données mixtes (que je ne maîtrise absolument pas) afin de voir quelles sont les variables ayant le plus d’effets, pour ensuite restreindre les analyses complémentaires à ces seules variables ayant le plus d’effets.

J’ai donc utiliser la commande res <- FAMD(duree) du package FactoMineR (duree étant le nom du jeu de données). Malheureusement, je me retrouve immédiatement avec l’erreur suivante :

Error in eigen(crossprod(X, X), symmetric = TRUE) :
valeurs infinies ou manquantes dans 'x'
In addition: Warning message:
In PCA(X, graph = FALSE, ind.sup = ind.sup, quanti.sup = tabNumIllu, :
Missing values are imputed by the mean of the variable: you should use the imputePCA function of the missMDA package

Le terme « missing values » semble indiquer que des valeurs manquantes se trouve dans mon jeu de données, et effectivement, 3 patients n’ont aucune données (NA) pour la variable « Physician » (mais ont des données, soit de 0, soit un autre nombre pour les variables « Objects » et « Mirror »). En cherchant un peu, j’ai trouvé qu’il faut en fait utiliser la fonction imputeFAMD quand il y a justement des valeurs manquantes. Ce que j’ai fait (res <- imputeFAMD(duree)). Sauf que désormais, je me retrouve avec l’erreur suivante :

Error in apply(tabdisj[, (vec[i] + 1):vec[i + 1]], 1, which.max) :
dim(X) doit avoir un longueur positive

Et là, je suis complètement perdu car je ne comprends ce que cette erreur veut dire.
Je vous partage mon problème et ma feuille de données dans l’espoir que l’un ou l’une d’entre vous puisse m’aider.
Peut-être que mes données sont mal organisées ? Ou que j’ai oublié certains paramètres à spécifier dans les commandes ?

Également, les 3 variables « Objects », « Physician » et « Mirror » (qui représentent le temps passé à regarder la variable en %) seront plus tard assemblées sous une seule variable appelée « Stimulus » car mon but final est de voir quels sont les facteurs qui influencent le temps passé à regarder ces différents stimuli. Peut-être que le souci vient directement de là, et qu’il faut d’abord que je les rassemble sous la variable « Stimulus » avant de faire imputeFAMD() ?

Merci beaucoup pour votre aide.

Bertrand Vassor
Messages : 46
Enregistré le : 18 Sep 2017, 10:18

Re: FAMD (analyse factorielle de données mixtes)

Messagepar Bertrand Vassor » 02 Sep 2023, 07:19

Bonjour,

Mon but est d’utiliser l’analyse factorielle de données mixtes (que je ne maîtrise absolument pas)

Tu peux regarder le site FactoMineR : http://factominer.free.fr/index_fr.html ou celui de François Husson https://husson.github.io/tutorials.html.

Il y a deux livres qui traitent spécifiquement de ces sujets avec FactoMineR : Analyse factorielle multiple avec R de Jérôme Pagès (EDP Sciences) et Analyse de données avec R de François Husson, Sébastien Lê, Jérôme Pagès (Presse universitaire de Rennes). J'ai trouvé ces ouvrages très biens.

Le package missMDA http://factominer.free.fr/missMDA/index_fr.html traite les valeurs manquantes notamment avec l'AFMD.

Bonne journée.
B


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité

cron