meetup raddicts reshape2
DESCRIPTION
Présentation par Timeri Veccella du package reshape2 pour le 2ème meetup Paris R Addicts.TRANSCRIPT
Introduction à reshape2
Timeri VECCELLA
Reshape2
• Obtenir des tableau croisés :
– sous forme de matrice/vecteur/array acast
– sous forme de data frame dcast
• Plus de 2 dimensions pour « acast »
DCAST Parce que 2 dimensions c’est déjà pas mal
Reshape2 : dcast
dcast(data = table, formula = lignes ~ colonnes, value.var=cases, fun.aggregate= fonction)
table : données qu’on veut « transformer »lignes : variables qu’on veut en ligne colonnes : variables qu’on veut en colonnescase : variable qu’on veut dans les cases du tableaufonction : fonction utilisée pour obtenir la valeur d’une case
Reshape2 : dcast
dcast(data = table, formula = lignes ~ colonnes, value.var=cases, fun.aggregate= fonction)
lignes : variables qu’on veut en ligne colonnes : variables qu’on veut en colonnes
Rq : on peut remplacer « colonnes » par « . » => une seule colonne
Reshape2 : dcast
dcast(data = table, formula = lignes ~ colonnes, value.var=cases, fun.aggregate= fonction)
case : variable qu’on veut dans chaque case du tableau
La fonction s’applique sur la variable choisie en case : somme, moyenne, nombre, min, max ...
Reshape2 : exempleslibrary("reshape2")load("D:/MeetUp/Raddicts/presentation/2 meetup/data/lego.R")
# nombre de coffrets sortis par année pour chaque série tc1 <- dcast(data=lego,formula=Series~Released, value.var="Series",fun.aggregate= length)
# nombre total de personnages dans chaque coffret par année de sortie pour chaque sérietc2 <- dcast(data=lego,formula=Series~Released, value.var="NbPerso",fun.aggregate= sum)
# si on veut la moyenne : ajout du paramètre "fill" pour remplacer les manquantstc3 <- dcast(data=lego,formula=Series~Released, value.var="NbPerso", fun.aggregate= mean,fill=0)
# prix moyen par année pour chaque sérietc4 <- dcast(data=lego,formula=Series~Released, value.var="Price", fun.aggregate= mean,fill=0)
# nombre de boites sorties dans la table de données (nombre de lignes par séries)tc5 <- dcast(data=lego,formula=Series~., value.var="Series",fun.aggregate= length)
MERCIÀ vous de jouer !!