Salut tout le monde,
La fonction sample(2,10,T) permet de répartir aléatoirement les 2 éléments 10fois mais si on voulais répartir les éléments m en taille égale genre autant de 1 que de 2 ?
merci.
Salut tout le monde,
La fonction sample(2,10,T) permet de répartir aléatoirement les 2 éléments 10fois mais si on voulais répartir les éléments m en taille égale genre autant de 1 que de 2 ?
merci.
Bonjour,
Je ne suis pas sûr de bien comprendre ta question :
Code R : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 m <- rep(c(1,2), 100) sample(m,20)
Dans mon exemple tu répètes 100 fois la suite 1, 2.
Ensuite parmi cette suite tu prends au hasard 20 éléments.
Au plaisir de te lire.
Bonjour,
La fonction sample possède un argument "prob" qui permet de spécifier un vecteur de poids de probabilités associés à chacune des valeurs parmi lesquelles le choix aléatoire va se faire (somme du vecteur = 1).
Cordialement,
A.D.
Bonjour,
L'idée est de faire une répartition aléatoire uniforme de N étudiants en n groupes mais à taille égale.
Code R : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 m <- data.frame(1:100) g1 <- m$X1.100[c(sample(m$X1.100, 5))] m$X1.100[-c(sample(m$X1.100, 5))] g2 <- m$X1.100[c(sample(m$X1.100, 5))]
1) Génération d'une data-frame
2) Création du premier groupe
3) Reste des étudiants
4) Création du second groupe.
Au plaisir de te lire.
Si le problème est d'avoir autant d'éléments dans chaque niveau d'un facteur et supposons que la colonne X contienne ce facteur de classement, alors on peut utiliser une fonction de type lapply :qui donne par niveau les indices retenus.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 lev <- as.character( levels( data$X)) res <- lapply( lev, function( niv) sample( which( data$X == niv), size=nb))
Si par contre, c'est pour de la validation croisée, les indices doivent être uniquse et on peut améliorer la solution de dev_gg comme suit :
puis prendre les nb premiers pour le premier groupe, les nb suivant pour le second, etc. Cependant le dernier groupe ne sera de même taille que les autres que si nb est un diviseur de nrow( df)
Code : Sélectionner tout - Visualiser dans une fenêtre à part idx <- sample( nrow( df))
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager