Échantillonnage systématique dans R (avec exemples)



Les chercheurs prélèvent souvent des échantillons dans une population et utilisent les données de l’échantillon pour tirer des conclusions sur la population dans son ensemble.

Une méthode d’échantillonnage couramment utilisée est l’échantillonnage systématique , qui est mis en œuvre selon un processus simple en deux étapes :

1. Placez chaque membre d’une population dans un certain ordre.

2. Choisissez un point de départ aléatoire et sélectionnez un membre sur n pour faire partie de l’échantillon.

Ce tutoriel explique comment effectuer un échantillonnage systématique dans R.

Exemple : échantillonnage systématique dans R

Supposons qu’un directeur souhaite obtenir un échantillon de 100 élèves d’une école qui compte 500 élèves au total. Elle choisit d’utiliser un échantillonnage systématique dans lequel elle place chaque élève par ordre alphabétique en fonction de son nom de famille, choisit au hasard un point de départ et sélectionne un élève sur cinq pour faire partie de l’échantillon.

Le code suivant montre comment créer un faux bloc de données avec lequel travailler dans R :

#make this example reproducible
set.seed(1)

#create simple function to generate random last names
randomNames <- function(n = 5000) {
  do.call(paste0, replicate(5, sample(LETTERS, n, TRUE), FALSE))
}

#create data frame
df <- data.frame(last_name = randomNames(500),
                 gpa = rnorm(500, mean=82, sd=3))

#view first six rows of data frame
head(df)

  last_name      gpa
1     GONBW 82.19580
2     JRRWZ 85.10598
3     ORJFW 88.78065
4     XRYNL 85.94409
5     FMDCE 79.38993
6     XZBJC 80.49061

Et le code suivant montre comment obtenir un échantillon de 100 étudiants grâce à un échantillonnage systématique :

#define function to obtain systematic sample
obtain_sys = function(N,n){
  k = ceiling(N/n)
  r = sample(1:k, 1)
  seq(r, r + k*(n-1), k)
}

#obtain systematic sample
sys_sample_df = df[obtain_sys(nrow(df), 100), ]

#view first six rows of data frame
head(sys_sample_df)

   last_name      gpa
3      ORJFW 88.78065
8      RWPSB 81.96988
13     RACZU 79.21433
18     ZOHKA 80.47246
23     QJETK 87.09991
28     JTHWB 83.87300

#view dimensions of data frame
dim(sys_sample_df)

[1] 100   2

Notez que le premier membre inclus dans l’échantillon se trouvait dans la ligne 3 du bloc de données d’origine. Chaque membre suivant de l’échantillon est situé 5 lignes après le membre précédent.

Et en utilisant dim() , nous pouvons voir que l’échantillon systématique que nous avons obtenu est un bloc de données de 100 lignes et 2 colonnes.

Ressources additionnelles

Types de méthodes d’échantillonnage
Échantillonnage stratifié dans R
Échantillonnage en grappes dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *