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
|
# jeu de donnees pour l'exemple
donnees <- data.frame(
X=runif(200, 0.005, 240),
Y=sample(x=c(1,0), size=200, replace=TRUE)
)
donnees$Y <- as.factor(donnees$Y)
# utilisation de la fonction cut pour découper une variable en un nombre de classes
# et qui affecte chaque ligne du data.frame à la classe calculée
donnees$X.categories <- cut(donnees$X, breaks=10)
# ensuite il y a plusieurs manières de faire le comptage, je préfère la seconde option
# solution moche
tapply(donnees$X.categories, donnees$Y, summary)
# solution sympa mais plus compliquée
do.call(rbind,
by(data=donnees, INDICES=list(X=donnees$X.categories),function(X){
return(data.frame(
Y.1=length(X$Y[X$Y==1]),
Y.0=length(X$Y[X$Y==0])
)
)
})
) |
Partager