1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    avril 2016
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : avril 2016
    Messages : 29
    Points : 32
    Points
    32

    Par défaut Tableau croisé dynamique sous R

    Bonjour,
    J'ai mon tableau sous la forme suivante:
    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
     
    > read.csv('D:/essai_rca.csv', header = TRUE, sep = ";")
       Reporter.ISO Commodity.Code Mcp
    1            TN              1   1
    2            TN              2   0
    3            TN              3   0
    4            TN              4   1
    5           DZA              1   1
    6           DZA              2   1
    7           DZA              3   0
    8           DZA              4   1
    9            FR              1   0
    10           FR              2   1
    11           FR              3   1
    12           FR              4   0
    J'aimerais construire un tableau croisé dynamique comme l'on peut obtenir sous excel:
    En ligne: la colonne Reporter.ISO
    En colonne: la colonne Commodity.Code
    En valeur: la colonne Mcp (càd la valeur de Mcp pour chaque croisement entre les 2 colonnes précitées et la somme totale en ligne et en colonne)
    Le tableau sera sous la forme suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
       DZA   FR   TN   Total
    1      1   0   1   2
    2      1   1   0   2
    3      0   1   0   1
    4      1   0   1   2
    Total   3   2   2   7
    Y a-t-il une solution sous R?
    Merci d'avance

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    février 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : février 2017
    Messages : 18
    Points : 38
    Points
    38

    Par défaut

    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
    table = read.csv('D:/essai_rca.csv', header = TRUE, sep = ";")
     
    table1 = as.data.frame(matrix( table$Mcp, ncol = length(unique(table$Reporter.ISO))  , 
                                  nrow = nrow(table)/length(unique(table$Reporter.ISO))))
    colnames(table1) = unique(table$Reporter.ISO)
    row.names(table1)= unique(table$Commodity.Code)
    table1 = cbind(table1, rowSums(table1))
    table1 = rbind(table1, colSums(table1))
    colnames(table1) = c(colnames(table1)[1:(ncol(table1)-1)], 'total')
    row.names(table1)= c(row.names(table1)[1:(nrow(table1)-1)],'total')
    table1
    #       TN DZA FR total
    # 1      1   1  0     2
    # 2      0   1  1     2
    # 3      0   0  1     1
    # 4      1   1  0     2
    # total  2   3  2     7

  3. #3
    Membre éprouvé

    Homme Profil pro
    Data Scientist & Statisticien
    Inscrit en
    février 2009
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Data Scientist & Statisticien
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : février 2009
    Messages : 404
    Points : 1 013
    Points
    1 013
    Billets dans le blog
    2

    Par défaut

    Les librairies reshape et reshape2 ont des fonctions qui permettent cela.

    Au plaisir de te lire.

Discussions similaires

  1. Tableau croisé dynamique sous oracle
    Par N_Ron dans le forum Oracle
    Réponses: 4
    Dernier message: 28/07/2009, 14h13
  2. Tableau croisé dynamique sous Excel 2007
    Par kizzy dans le forum Excel
    Réponses: 1
    Dernier message: 30/06/2009, 10h18
  3. Réponses: 6
    Dernier message: 20/02/2007, 10h42
  4. filtrer tableau croisé dynamique sous excel
    Par kernel57 dans le forum Excel
    Réponses: 7
    Dernier message: 17/11/2006, 14h18
  5. tableau croisé dynamique sous delphi, comment ?
    Par Brice Yao dans le forum Bases de données
    Réponses: 2
    Dernier message: 20/07/2005, 09h33

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