Comment sélectionner des lignes aléatoires dans R à l’aide de dplyr
Vous pouvez utiliser les méthodes suivantes pour sélectionner des lignes aléatoires dans un bloc de données dans R à l’aide des fonctions du package dplyr :
Méthode 1 : sélectionner un nombre aléatoire de lignes
df %>% sample_n(5)
Cette fonction sélectionne au hasard 5 lignes du bloc de données.
Méthode 2 : sélectionner une fraction aléatoire de lignes
df %>% sample_frac(.25)
Cette fonction sélectionne aléatoirement 25 % de toutes les lignes du bloc de données.
Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le bloc de données suivant dans R :
#create data frame
df <- data.frame(team=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'),
points=c(10, 10, 8, 6, 15, 15, 12, 12),
rebounds=c(8, 8, 4, 3, 10, 11, 7, 7))
#view data frame
df
team points rebounds
1 A 10 8
2 B 10 8
3 C 8 4
4 D 6 3
5 E 15 10
6 F 15 11
7 G 12 7
8 H 12 7
Exemple 1 : sélectionner un nombre aléatoire de lignes
Nous pouvons utiliser le code suivant pour sélectionner aléatoirement 5 lignes du bloc de données :
library(dplyr)
#randomly select 5 rows from data frame
df %>% sample_n(5)
team points rebounds
1 F 15 11
2 A 10 8
3 D 6 3
4 G 12 7
5 B 10 8
Notez que cinq lignes sont sélectionnées au hasard dans le bloc de données.
Exemple 2 : sélectionner une fraction aléatoire de lignes
Nous pouvons utiliser le code suivant pour sélectionner aléatoirement 25 % de toutes les lignes du bloc de données :
library(dplyr)
#randomly select 25% of all rows from data frame
df %>% sample_frac(.25)
team points rebounds
1 E 15 10
2 G 12 7
Étant donné que la trame de données d’origine comportait 8 valeurs totales, 25 % de 8 est égal à 2.
Ainsi, deux lignes sont sélectionnées au hasard dans la trame de données.
Remarque : Vous pouvez trouver la documentation complète des fonctions sample_n et sample_frac dans dplyr ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans dplyr :
Comment sélectionner des colonnes par index à l’aide de dplyr
Comment sélectionner la première ligne par groupe à l’aide de dplyr
Comment filtrer selon plusieurs conditions à l’aide de dplyr
Comment filtrer les lignes contenant une certaine chaîne à l’aide de dplyr