Cara menggunakan fungsi map() di r (dengan contoh)
Fungsi map() dari paket purrr di R dapat digunakan untuk menerapkan fungsi ke setiap elemen vektor atau daftar dan mengembalikan daftar yang sesuai.
Fungsi ini menggunakan sintaks dasar berikut:
peta(.x, .f)
Emas:
- .x : Vektor atau daftar
- .f : Suatu fungsi
Contoh berikut menunjukkan cara menggunakan fungsi ini dalam berbagai skenario.
Contoh 1: Gunakan map() untuk menghasilkan variabel acak
Kode berikut menunjukkan cara menggunakan fungsi map() untuk menghasilkan tiga variabel acak yang masing-masing berisi lima nilai yang mengikuti distribusi normal standar:
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
Untuk setiap elemen vektor asli, fungsi map() menerapkan fungsi rnorm() untuk menghasilkan lima nilai acak dari distribusi normal standar .
Contoh 2: Gunakan map() untuk mengubah setiap nilai menjadi vektor
Kode berikut menunjukkan cara menggunakan fungsi map() untuk menghitung kuadrat setiap nilai dalam vektor:
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
Untuk setiap elemen vektor asli, fungsi map() menerapkan fungsi yang menghitung kuadrat setiap nilai.
Contoh 3: Gunakan map() untuk menghitung rata-rata setiap vektor dalam daftar
Kode berikut menunjukkan cara menggunakan fungsi map() untuk menghitung nilai rata-rata setiap vektor dalam daftar:
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
Untuk setiap vektor dalam daftar, fungsi map() menghitung nilai rata-rata.
Dari hasilnya kita dapat melihat:
- Nilai rata-rata vektor pertama dalam daftar adalah 2 .
- Nilai rata-rata vektor kedua dalam daftar adalah 5 .
- Nilai rata-rata vektor ketiga dalam daftar adalah 7,5 .
Catatan : Argumen na.rm=TRUE memberitahu R untuk mengabaikan nilai NA saat menghitung rata-rata.
Sumber daya tambahan
Tutorial berikut menjelaskan cara menggunakan fungsi umum lainnya di R:
Cara menggunakan fungsi tapply() di R
Cara menggunakan fungsi dim() di R
Cara menggunakan fungsi table() di R
Cara menggunakan fungsi sign() di R