Mulai sekarangMulai gratis

lapply dan fungsi anonim

Menulis fungsi Anda sendiri lalu menggunakannya di dalam lapply() adalah pencapaian yang bagus! Namun, mendefinisikan fungsi hanya untuk dipakai sekali rasanya berlebihan, bukan? Karena itu Anda dapat menggunakan fungsi anonim di R.

Sebelumnya, Anda telah mempelajari bahwa fungsi di R adalah objek yang berdiri sendiri. Artinya, fungsi tidak otomatis terikat pada sebuah nama. Saat Anda membuat fungsi, Anda dapat menggunakan operator penugasan untuk memberikan nama pada fungsi tersebut. Namun, sama sekali mungkin untuk tidak memberi nama pada fungsi. Ini disebut fungsi anonim:

# Fungsi bernama
triple <- function(x) { 3 * x }

# Fungsi anonim dengan implementasi yang sama
function(x) { 3 * x }

# Gunakan fungsi anonim di dalam lapply()
lapply(list(1,2,3), function(x) { 3 * x })

split_low sudah didefinisikan untuk Anda.

Latihan ini merupakan bagian dari kursus

R Tingkat Menengah

Lihat Kursus

Instruksi latihan

  • Ubah pemanggilan pertama lapply() sehingga menggunakan fungsi anonim yang melakukan hal yang sama.
  • Dengan cara serupa, ubah pemanggilan lapply kedua agar menggunakan versi anonim dari fungsi select_second().
  • Hapus kedua definisi select_first() dan select_second(), karena keduanya tidak lagi diperlukan.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# split_low has been created for you
split_low

# Transform: use anonymous function inside lapply
select_first <- function(x) {
  x[1]
}
names <- lapply(split_low, select_first)

# Transform: use anonymous function inside lapply
select_second <- function(x) {
  x[2]
}
years <- lapply(split_low, select_second)
Edit dan Jalankan Kode