Systematische Stichprobe in R - so geht's

Von Fabian
Kategorie: R
Lesezeit: 2 Minuten

Forscher nehmen häufig Stichproben aus einer Population und verwenden die Daten aus der Stichprobe, um Rückschlüsse auf die Gesamtpopulation zu ziehen.

Eine häufig verwendete Probenahmemethode ist die systematische Stichprobenahme, die mit einem einfachen zweistufigen Verfahren durchgeführt wird:

1. Ordnen Sie jedes Mitglied einer Population in einer bestimmten Reihenfolge.

2. Wählen Sie einen zufälligen Startpunkt und wählen Sie jedes n-te Mitglied aus, das in der Stichprobe enthalten sein soll.

In diesem Tutorial wird erklärt, wie systematische Stichproben in R durchgeführt werden.

Beispiel: Systematische Probenahme in R

Angenommen, ein Superintendent möchte eine Stichprobe von 100 Schülern einer Schule mit insgesamt 500 Schülern erhalten. Sie wählt eine systematische Stichprobe, bei der sie jeden Schüler in alphabetischer Reihenfolge nach seinem Nachnamen sortiert, zufällig einen Startpunkt auswählt und jeden fünften Schüler für die Stichprobe auswählt.

Der folgende Code zeigt, wie Sie ein synthetisches Dataframe erstellen, mit dem Sie in R arbeiten können:

#Machen Sie dieses Beispiel reproduzierbar
set.seed(1)

#Erstellen Sie eine einfache Funktion, um zufällige Nachnamen zu generieren
randomNames <- function(n = 5000) {
  do.call(paste0, replicate(5, sample(LETTERS, n, TRUE), FALSE))
}

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

#Die ersten sechs Zeilen des Dataframes anzeigen
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

Der folgende Code zeigt, wie Sie durch systematische Stichproben eine Stichprobe von 100 Schülern erhalten:

#Funktion definieren, um eine systematische Stichprobe zu erhalten
obtain_sys = function(N,n){
  k = ceiling(N/n)
  r = sample(1:k, 1)
  seq(r, r + k*(n-1), k)
}

#systematische Probe erhalten
sys_sample_df = df[obtain_sys(nrow(df), 100), ]

#Die ersten sechs Zeilen des Dataframes anzeigen
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

#Abmessungen des Dataframes anzeigen
dim(sys_sample_df)

[1] 100 2

Beachten Sie, dass sich das erste in der Stichprobe enthaltene Element in Zeile 3 des ursprünglichen Dataframes befand. Jedes nachfolgende Element in der Stichprobe befindet sich 5 Zeilen nach dem vorherigen Element.

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

Zusätzliche Ressourcen

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

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: