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 :

Aide graph ACM


Sujet :

R

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Consultant E-Business
    Inscrit en
    Avril 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant E-Business
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Aide graph ACM
    Bonjour,

    Nous souhaitons coder un ACM sur R pour un projet d'analyse de data en sociologie. Trouvez-ci joint le code que nous avons utilisé. Malheureusement, il marche en entier, l'ACM tourne, mais il n'affiche pas de graph (plot nuage de points) comme nous le souhaiterions. Que devons nous ajouter au code afin d'afficher ce dernier? Merci d'avance

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    # Import encounters (merged) data, plus the individuals table.
    enc <- read.csv('~/Desktop/2A/speed_dating/merged_dataset.csv')
    ind <- read.csv('~/Desktop/2A/speed_dating/individuals_table.csv')
     
    # Reformat ethnicity variable.
    for (var in c('race', 'race_o')) {
      enc[, var] <- as.factor(enc$race)
      levels(enc[, var]) <- c('black', 'caucasian', 'hispanic', 'asian', 'other')
    }
     
    # Reformat share-ethinicity dummy variable.
    enc$same_race <- as.factor(enc$same_race)
     
    # Reformat subjective scores given to (and from) partners,
    # as well as decision dummy variables.
    scores <- c('attr', 'sinc', 'intel', 'fun', 'amb')
    scores <- c(scores, paste0(scores, '_o'))
    decision <- c('match', 'dec', 'dec_o')
    for (var in c(scores, decision)) {
      enc[, var] <- as.factor(enc[, var])
    }
     
    # Recode career variable (at individual level)
    career <- ind$career_c
    career[career %in% c(1, 7, 8, 9, 11, 13, 16)] <- 1
    career[career %in% c(2, 3, 4, 5, 12)] <- 2
    career[career %in% c(6, 17)] <- 3
    career[career == 14] <- 4
    career[career %in% c(10, 15)] <- 5
    career <- as.factor(career)
    levels(career) <- c(
      'social sciences', 'hard sciences', 'arts', 'sports', 'other/undecided'
    )
    names(career) <- ind$iid
     
    # Merge the previous information into the ecounters data.
    enc$career <- sapply(as.character(enc$iid), function(x) career[x])
    enc$career_o <- sapply(as.character(enc$pid), function(x) career[x])
     
     
    # Reformat hobbies variables.
    hobbies <- colnames(ind)[grep('^hobbies', colnames(ind))]
    # Identify best-graded hobbie for each individual.
    favorite <- hobbies_names[apply(ind[, hobbies], 1, which.max)]
    names(favorite) <- ind$iid
    # Distribute the information in the encounter table.
    enc$hobbies <- sapply(as.character(enc$iid), function(x) favorite[x])
    enc$hobbies_o <- sapply(as.character(enc$pid), function(x) favorite[x])
    # Reformat the resulting columns.
    hobbies_names <- unlist(strsplit(hobbies, '_'))[seq(2, 2 * length(hobbies), 2)]
    for (var in c('hobbies', 'hobbies_o')) {
      enc[, var] <- as.factor(enc[, var])
      levels(enc[, var]) <- hobbies_names
    }
     
     
    # Alternative: run a PCA, run a HCPC clutering, use cluster pertenancy.
    #pca <- FactoMineR::PCA(ind[, hobbies], ncp=5, graph=FALSE)
    #hcpc <- FactoMineR::HCPC(pca, nb.clust=4, graph=FALSE)
    #hobbies <- hcpc$data.clust$clust
    #names(hobbies) <- ind$iid
    #enc$hobbies <- sapply(as.character(enc$iid), function(x) hobbies[x])
    #enc$hobbies_o <- sapply(as.character(enc$pid), function(x) hobbies[x])
     
     
    # Subselect the data to keep.
    varnames <- c(
      'race', 'race_o', 'same_race', scores, 'career', 'career_o',
      'hobbies', 'hobbies_o', decision
    )
    enc <- enc[, varnames]
     
    # Run the MCA
    mca <- FactoMineR::MCA(enc, quali.sup=18:20)

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 476
    Points : 831
    Points
    831
    Par défaut
    plot(mca)

Discussions similaires

  1. aide.graphe d'equation 2 degré en matlab
    Par waliddz dans le forum MATLAB
    Réponses: 9
    Dernier message: 29/10/2008, 15h38
  2. aide graphe d'equation 2 degré
    Par waliddz dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 28/10/2008, 18h54
  3. Réponses: 10
    Dernier message: 19/04/2007, 19h52
  4. [Vb.net] Besoin d'aide pour générer des graphs
    Par NicoNGRI dans le forum ASP.NET
    Réponses: 2
    Dernier message: 12/12/2006, 19h33
  5. [AIDE]Graphe déroulant Visual C++
    Par NicoGui69 dans le forum MFC
    Réponses: 4
    Dernier message: 16/08/2006, 19h51

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