Modérateur : Groupe des modérateurs
Code : Tout sélectionner
size <- (1:4)*10 ## taille des sites
df <- data.frame(site=rep(LETTERS[1:4],size),id=1:sum(size),x=10+rnorm(sum(size)))
taux <- 0.1 ## taux de sondage
df.s <- split(df,df$site)
df.s2 <- lapply(df.s,function(x) x[sample(1:nrow(x),nrow(x)*taux),])
do.call(rbind,df.s2)
Code : Tout sélectionner
library(dplyr)
df %>% group_by(site) %>% sample_frac(0.1)
Retourner vers « Questions en cours »
Utilisateurs parcourant ce forum : Bertrand Vassor et 1 invité