IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

R Determiner les arguments dans MCA()


Sujet :

R

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2016
    Messages : 2
    Points : 1
    Points
    1
    Par défaut R Determiner les arguments dans MCA()
    Bonjour à tous,

    Je voulais faire une ACM avec FactoMineR mais je ne comprends comment choisir les différents arguments.
    Voici les données:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    str(DataEx1)
    'data.frame':   1253 obs. of  7 variables:
     $ Tv      : Factor w/ 8 levels "Comedy","Documentary",..: 7 7 2 7 1 1 5 5 7 5 ...
     $ Cinema    : Factor w/ 8 levels "Action","Comedy",..: 1 5 1 4 5 5 1 3 4 1 ...
     $ Art       : Factor w/ 7 levels "Modern art",..: 5 4 5 6 4 3 5 2 5 5 ...
     $ Restaurant: Factor w/ 6 levels "Fast_food",..: 6 4 1 5 4 4 4 2 6 2 ...
     $ Sex      : Factor w/ 2 levels "Man","Woman": 1 1 1 1 1 1 1 2 1 1 ...
     $ Age       : Factor w/ 6 levels "18-24","25-34",..: 5 4 5 6 3 1 2 6 6 6 ...
     $ Salary    : Factor w/ 6 levels "High",..: 4 6 6 2 2 6 2 2 6 2 ...
    J'ai essayé ces lignes de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    library(FactoMineR)
     
    DataMCA <- MCA (DataEx1, quali.sup = 5:7,graph=F)
     
    DataMCA$eig
        eigenvalue percentage of variance cumulative percentage of variance
    dim 1   0.3970572               6.352915                          6.352915
    dim 2   0.3501668               5.602669                         11.955584
    dim 3   0.3231669               5.170670                         17.126254
    dim 4   0.3058455               4.893528                         22.019782
    dim 5   0.2934403               4.695045                         26.714828
    dim 6   0.2854544               4.567270                         31.282098
    dim 7   0.2795237               4.472379                         35.754477
    dim 8   0.2747506               4.396009                         40.150486
    dim 9   0.2680900               4.289440                         44.439926
    dim 10  0.2603915               4.166264                         48.606190
    dim 11  0.2568716               4.109945                         52.716135
    dim 12  0.2511264               4.018022                         56.734157
    dim 13  0.2480273               3.968437                         60.702594
    dim 14  0.2427311               3.883698                         64.586292
    dim 15  0.2380592               3.808947                         68.395239
    dim 16  0.2328566               3.725705                         72.120944
    dim 17  0.2236186               3.577898                         75.698842
    dim 18  0.2161532               3.458452                         79.157294
    dim 19  0.2093937               3.350299                         82.507592
    dim 20  0.2049270               3.278832                         85.786425
    dim 21  0.1941293               3.106069                         88.892494
    dim 22  0.1893950               3.030321                         91.922814
    dim 23  0.1844666               2.951465                         94.874279
    dim 24  0.1658861               2.654177                         97.528456
    dim 25  0.1544715               2.471544                        100.000000
    Je ne sais pas si `

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataMCA <- MCA (DataEx1, quali.sup = 5:7,graph=F)
    `
    est correct par rapport aux options choisis et ne comprends pas combien de ncp je dois choisir au vue des résultats de DataMCA$eig.

    Pouvez-vous m'aider svp?

    Merci

  2. #2
    Membre habitué
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Décembre 2015
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2015
    Messages : 72
    Points : 180
    Points
    180
    Par défaut
    Bonjour,

    les options dépendent de votre question. A en voir votre jeu de données, je dirai qu'il s'agit de faire ressortir des typologies de sortie le soir, puis de les confronter à des variables de type (tranche d'âge, sexe, salaire).

    Dans ce cadre là, le choix des trois dernières variables en supplémentaire me paraît cohérent.

    le ncp correspond aux nombres de dimensions à conserver après l'ACM (son objectif étant en partie de réduire le nombre de dimensions, notamment dans le cadre d'une classification après). Il faut donc conserver suffisamment d'information, ce qui est indiqué par la dernière colonne. Par exemple, si vous désirez conserver au moins 90% de l'information, il faudra conserver 22 dimensions. A vous de choisir après.

    J'espère avoir été assez clair.

    VV

    Attention, entre votre jeu de données initiales et votre ACM, certaines modalités semblent avoir disparu (29 modalités sur les 4 variables actives, contre 25 dimension à la fin de l'ACM)

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2016
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Je vous remercie beaucoup de votre réponse.
    Avez-vous une idée de comment j'ai pu perdre des dimensions? Cela m'intrigue!

    Bonne journée

  4. #4
    Membre habitué
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Décembre 2015
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2015
    Messages : 72
    Points : 180
    Points
    180
    Par défaut
    Je n'ai pas trop d'explication comme cela, ce n'est pas facile sans le jeu de données. Peut-être certaines variables sont dépendantes ?

    Avez-vous fait des restrictions sur le jeu de données ? Certaines modalités pourrait alors disparaître.

  5. #5
    Membre éclairé
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Points : 793
    Points
    793
    Par défaut
    Perte de dimension : sauf erreur de ma part, le nombre de dimensions correspond au nombre de degrés de liberté, c'est-à-dire que par variable c'est le nombre de modalité - 1 puisqu'il y a dans le calcul une normalisation par variable.

    Quant à la cohérence de l'appel, il est difficile de juger dans la mesure où le procédure dépend de la question posée. On pourrait aussi penser faire une AFM avec 2 groupes, loisirs, socioculturel, ce 2ème groupe incluant l'âge ou 3 groupes... ou bien faire une ACM incluant toutes les variables comme variables actives.

    Pour le nombre de composantes à conserver, voir ce qu'en dit Saporta (http://cedric.cnam.fr/~saporta/valproSTA201.pdf) "Les parts d'inertie ne sont pas pertinentes" ou Baccini §3.3.2 page 31 (http://www.math.univ-toulouse.fr/~ba...edago/asdm.pdf).

  6. #6
    Membre habitué
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Décembre 2015
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2015
    Messages : 72
    Points : 180
    Points
    180
    Par défaut
    C'est vrai pour le nombre de dimensions, autant pour moi, je n'ai plus fait d'ACM depuis quelque temps. 25 est donc normal


    La méthode du coude est effectivement possible, mais je trouve qu'on risque de passer à côté d'une grande quantité d'information selon sa position. Dans ce cas là, ne vaut-il mieux pas mettre une valeur minimale sur l'inertie totale conservée ?

  7. #7
    Membre éclairé
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Points : 793
    Points
    793
    Par défaut
    Je sais que le critère du % d'inertie est un critère très populaire mais il est déjà très contestable pour une ACP avec une métrique de type Mahalonobis. En effet, le nombre de composantes en fonction du % d'inertie dépendra du nombre de variables (ACP) ou de modalités pour (ACM) indépendamment du fait que ces variables ou ces modalités sont liés ou non aux autres. C'est plus facile à expliquer le pourquoi avec l'ACP. Supposons 5 variables quasi-indépendantes, 80% d'inertie conduit à conserver environ 4 dimensions, si j'ai 100 variables quasiment indépendantes, alors je conserverai environ 80 dimensions. On peut facilement voir cet effet en créant un jeu de données par exemple à 5 dimensions assez corrélées, les analyser par l'ACP, puis rajouter 5 autres variables non corrélées aux autres et recommencer puis ensuite 90 nouvelles variables. Le nombre de dimensions à conserver par le critère du % va croitre. Seule exception quand le nombre de variables excède le nombre de lignes sans compter le problème de stabilité quand ces deux valeurs sont proches (cf. problèmes des matrices aléatoires).

    Après à chacun de choisir son critère à partir du moment où il peut le justifier.

Discussions similaires

  1. conserver les arguments dans le fichier vbs
    Par sam874 dans le forum VBScript
    Réponses: 4
    Dernier message: 20/12/2010, 09h31
  2. Arguments dans les procédures stockées
    Par sliderman dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 28/03/2008, 13h29
  3. Apostrophe dans les arguments!
    Par Paco75 dans le forum Langage
    Réponses: 3
    Dernier message: 27/02/2007, 20h29
  4. Espace dans les arguments de fonction
    Par black is beautiful dans le forum Windows
    Réponses: 2
    Dernier message: 11/03/2006, 12h06
  5. fonction dont les argument sont dans un dico
    Par GConstant dans le forum Général Python
    Réponses: 1
    Dernier message: 12/08/2004, 18h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo