MulaiMulai sekarang secara gratis

Gagal menyederhanakan

Untuk penggunaan interaktif, sapply() sangat berguna. Fungsi ini menebak tipe keluaran agar dapat menyederhanakan, dan biasanya itu baik-baik saja. Namun, sapply() bukan opsi yang aman digunakan saat menulis fungsi. Jika sapply() tidak dapat menyederhanakan keluaran Anda, maka ia akan kembali ke nilai bawaan berupa list seperti lapply(). Hal ini bisa berbahaya dan merusak fungsi kustom jika Anda menuliskannya dengan asumsi sapply() akan mengembalikan vektor yang sudah disederhanakan.

Mari kita lihat sebuah latihan menggunakan list yang berisi informasi tentang kejatuhan pasar saham tahun 2008.

Latihan ini adalah bagian dari kursus

R Tingkat Menengah untuk Keuangan

Lihat Kursus

Petunjuk latihan

List market_crash telah dibuat untuk Anda.

  • Gunakan sapply() untuk mendapatkan class() dari setiap elemen dalam market_crash.


Sebuah list baru, market_crash2, telah dibuat. Perbedaannya ada pada pembuatan tanggal!

  • Gunakan lapply() untuk mendapatkan class() dari setiap elemen dalam market_crash2.
  • Gunakan sapply() untuk mendapatkan class() dari setiap elemen dalam market_crash2.


date di market_crash2 memiliki beberapa kelas. Mengapa sapply() tidak dapat menyederhanakannya?

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Market crash with as.Date()
market_crash <- list(dow_jones_drop = 777.68, 
                     date = as.Date("2008-09-28"))
                     
# Find the classes with sapply()
___

# Market crash with as.POSIXct()
market_crash2 <- list(dow_jones_drop = 777.68, 
                      date = as.POSIXct("2008-09-28"))

# Find the classes with lapply()
___

# Find the classes with sapply()
___
Edit dan Jalankan Kode