Systematisches sampling in r (mit beispielen)


Forscher entnehmen häufig Stichproben aus einer Population und nutzen die Daten aus der Stichprobe, um Rückschlüsse auf die Population als Ganzes zu ziehen.

Eine häufig verwendete Probenahmemethode ist die systematische Probenahme , die in einem einfachen zweistufigen Prozess umgesetzt wird:

1. Ordnen Sie jedes Mitglied einer Bevölkerung in einer bestimmten Reihenfolge an.

2. Wählen Sie einen zufälligen Startpunkt und wählen Sie ein Mitglied von n aus, das Teil der Stichprobe sein soll.

In diesem Tutorial wird erläutert, wie Sie systematische Stichproben in R durchführen.

Beispiel: systematische Stichprobenziehung in R

Angenommen, ein Schulleiter möchte eine Stichprobe von 100 Schülern einer Schule mit insgesamt 500 Schülern erhalten. Sie entscheidet sich für eine systematische Stichprobe, bei der sie jeden Schüler anhand seines Nachnamens in alphabetischer Reihenfolge anordnet, einen zufälligen Ausgangspunkt wählt und jeden fünften Schüler für die Stichprobe auswählt.

Der folgende Code zeigt, wie man einen gefälschten Datenrahmen für die Arbeit in R erstellt:

 #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

Und der folgende Code zeigt, wie man durch systematische Stichprobe eine Stichprobe von 100 Schülern erhält:

 #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

Beachten Sie, dass sich das erste in der Stichprobe enthaltene Mitglied in Zeile 3 des ursprünglichen Datenrahmens befand. Jedes nächste Mitglied der Stichprobe befindet sich 5 Zeilen nach dem vorherigen Mitglied.

Und mit dim() können wir sehen, dass die systematische Stichprobe, die wir erhalten haben, ein Datenrahmen mit 100 Zeilen und 2 Spalten ist.

Zusätzliche Ressourcen

Arten von Stichprobenmethoden
Geschichtete Probenahme in R
Cluster-Sampling in R

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert