So verwenden sie die funktion „map()“ in r (mit beispielen)
Mit der Funktion „map() “ des purrr- Pakets in R kann eine Funktion auf jedes Element eines Vektors oder einer Liste angewendet und entsprechend eine Liste zurückgegeben werden.
Diese Funktion verwendet die folgende grundlegende Syntax:
Karte(.x, .f)
Gold:
- .x : Ein Vektor oder eine Liste
- .f : Eine Funktion
Die folgenden Beispiele zeigen, wie Sie diese Funktion in verschiedenen Szenarien verwenden.
Beispiel 1: Verwenden Sie map(), um Zufallsvariablen zu generieren
Der folgende Code zeigt, wie Sie mit der Funktion „map()“ drei Zufallsvariablen generieren, die jeweils fünf Werte enthalten, die einer Standardnormalverteilung folgen:
library (purrr)
#definevector
data <- 1:3
#apply rnorm() function to each value in vector
data %>%
map( function (x) rnorm(5, x))
[[1]]
[1] 0.0556774 1.8053082 2.6489861 2.2640136 1.1062672
[[2]]
[1] 1.450175 1.123048 3.413677 3.055304 2.713801
[[3]]
[1] 2.936732 2.157129 3.693738 2.994391 2.567040
Für jedes Element des ursprünglichen Vektors wendete die Funktion „map()“ die Funktion „rnorm()“ an, um fünf Zufallswerte aus einer Standardnormalverteilung zu generieren.
Beispiel 2: Verwenden Sie map(), um jeden Wert in einen Vektor umzuwandeln
Der folgende Code zeigt, wie Sie mit der Funktion „map()“ das Quadrat jedes Werts in einem Vektor berechnen:
library (purrr)
#definevector
data <- c(2, 4, 10, 15, 20)
#calculate square of each value in the vector
data %>%
map( function (x) x^2)
[[1]]
[1] 4
[[2]]
[1] 16
[[3]]
[1] 100
[[4]]
[1] 225
[[5]]
[1] 400
Für jedes Element des ursprünglichen Vektors wendete die Funktion „map()“ eine Funktion an, die das Quadrat jedes Werts berechnete.
Beispiel 3: Verwenden Sie map(), um den Durchschnitt jedes Vektors in der Liste zu berechnen
Der folgende Code zeigt, wie Sie mit der Funktion „map()“ den Durchschnittswert jedes Vektors in einer Liste berechnen:
library (purrr)
#define list of vectors
data <- list(c(1, 2, 3),
c(4, 5, 6),
c(7, 8, NA))
#calculate mean value of each vector in list
data %>%
map(mean, na. rm = TRUE )
[[1]]
[1] 2
[[2]]
[1] 5
[[3]]
[1] 7.5
Für jeden Vektor in der Liste berechnet die Funktion map() den Durchschnittswert.
Aus dem Ergebnis können wir sehen:
- Der Durchschnittswert des ersten Vektors in der Liste beträgt 2 .
- Der Durchschnittswert des zweiten Vektors in der Liste beträgt 5 .
- Der Durchschnittswert des dritten Vektors in der Liste beträgt 7,5 .
Hinweis : Das Argument na.rm=TRUE weist R an, NA-Werte bei der Berechnung des Durchschnitts zu ignorieren.
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere gängige Funktionen in R verwenden:
So verwenden Sie die Funktion tapply() in R
So verwenden Sie die Funktion dim() in R
So verwenden Sie die Funktion table() in R
So verwenden Sie die Funktion sign() in R