Les fonctions acast() et dcast() associées à la fonction melt(), du package reshape2, permettent d’obtenir une table de contingence.
library(reshape2) # On charge le package reshape2
airquality
aqm <- melt(airquality, id=c("Month", "Day"), na.rm=TRUE)
#On passe d’un format “Wide” à un format “Long”
#Pour un array
acast(aqm, Month ~ variable, mean)
#On obtient une table de contingence contenant la moyenne de chaque variable en fonction du mois
acast(aqm, Month ~ variable, mean, margins = TRUE)
#On ajoute les moyennes de chaque variable pour l'ensemble des mois
#et les moyennes de chaque mois pour l'ensemble des variables
#Pour un data.frame
dcast(aqm, Month ~ variable, mean, margins = c("Month", "variable"))