So generieren sie ein beispiel mit der sample-funktion in r


Mit der Funktion „sample()“ in R können Sie eine zufällige Stichprobe von Elementen aus einem Datensatz oder Vektor mit oder ohne Ersatz entnehmen.

Die grundlegende Syntax der Funktion sample() lautet:

Beispiel (x, Größe, ersetzen = FALSE , prob = NULL )

x : ein Datensatz oder Vektor, aus dem die Stichprobe ausgewählt werden soll
Größe : Stichprobengröße
ersetzen : Soll die Probenahme mit Ersatz durchgeführt werden? (dies ist standardmäßig FALSE)
prob : ein Vektor mit Wahrscheinlichkeitsgewichten, um die Elemente des abgetasteten Vektors zu erhalten

Die vollständige Dokumentation für sample() finden Sie hier .

Die folgenden Beispiele zeigen praktische Beispiele für die Verwendung von sample().

Generieren Sie eine Probe aus einem Vektor

Angenommen, wir haben einen Vektor a mit 10 Elementen:

 #define vector a with 10 elements in it
a <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

Um eine Zufallsstichprobe von 5 Elementen des Vektors a ohne Ersatz zu erzeugen, können wir die folgende Syntax verwenden:

 #generate random sample of 5 elements from vector a
sample(a, 5)

#[1] 3 1 4 7 5

Es ist wichtig zu beachten, dass wir jedes Mal, wenn wir eine Zufallsstichprobe erstellen, wahrscheinlich jedes Mal einen anderen Satz von Elementen erhalten.

 #generate another random sample of 5 elements from vector a
sample(a, 5)

#[1] 1 8 7 4 2

Wenn wir unsere Ergebnisse reproduzieren und jedes Mal mit derselben Probe arbeiten möchten, können wir set.seed() verwenden.

 #set.seed(some random number) to ensure that we get the same sample each time
set.seed(122)

#define vector a with 10 elements in it
a <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

#generate random sample of 5 elements from vector a
sample(a, 5)

#[1] 10 9 2 1 4

#generate another random sample of 5 elements from vector a
sample(a, 5)

#[1] 10 9 2 1 4

Wir können auch das Argument „replace = TRUE“ verwenden, um eine Stichprobe mit Ersetzung durchzuführen. Dies bedeutet, dass jedes Element des Vektors so ausgewählt werden kann, dass es mehr als einmal in der Probe erscheint.

 #generate random sample of 5 elements from vector a using sampling with replacement
sample(a, 5, replace = TRUE)

#10 10 2 1 6

Generieren Sie eine Stichprobe aus einem Datensatz

Eine weitere häufige Verwendung der Funktion „sample()“ besteht darin, eine zufällige Stichprobe von Zeilen aus einem Datensatz zu generieren. Für das folgende Beispiel generieren wir eine Zufallsstichprobe von 10 Zeilen aus dem integrierten R-Datensatz iris , der insgesamt 150 Zeilen enthält.

 #view first 6 rows of iris dataset
head(iris)

# Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#1 5.1 3.5 1.4 0.2 setosa
#2 4.9 3.0 1.4 0.2 setosa
#3 4.7 3.2 1.3 0.2 setosa
#4 4.6 3.1 1.5 0.2 setosa
#5 5.0 3.6 1.4 0.2 setosa
#6 5.4 3.9 1.7 0.4 setosa

#set seed to ensure that this example is replicable
set.seed(100)

#choose a random vector of 10 elements from all 150 rows in iris dataset
sample_rows <- sample(1:nrow(iris), 10)
sample_rows

#[1] 47 39 82 9 69 71 117 53 78 25

#choose the 10 rows of the iris dataset that match the row numbers above
sample <- iris[sample_rows, ]
sample

# Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#47 5.1 3.8 1.6 0.2 setosa
#39 4.4 3.0 1.3 0.2 setosa
#82 5.5 2.4 3.7 1.0 versicolor
#9 4.4 2.9 1.4 0.2 setosa
#69 6.2 2.2 4.5 1.5 versicolor
#71 5.9 3.2 4.8 1.8 versicolor
#117 6.5 3.0 5.5 1.8 virginica
#53 6.9 3.1 4.9 1.5 versicolor
#78 6.7 3.0 5.0 1.7 versicolor
#25 4.8 3.4 1.9 0.2 setosa

Beachten Sie, dass Sie beim Kopieren und Einfügen des obigen Codes in Ihre eigene R-Konsole genau das gleiche Beispiel erhalten sollten, da wir set.seed(100) verwendet haben, um sicherzustellen, dass wir jedes Mal das gleiche Beispiel erhalten.

Einen Kommentar hinzufügen

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