MulaiMulai sekarang secara gratis

Default logika

cut_by_quantile() sekarang sedikit lebih mudah digunakan, tetapi Anda tetap harus selalu menentukan argumen na.rm. Ini akan menghapus nilai hilang—perilakunya sama seperti argumen na.rm pada mean() atau sd().

Jika sebuah fungsi memiliki argumen untuk menghapus nilai hilang, praktik terbaiknya adalah tidak menghapusnya secara default (untuk berjaga-jaga jika Anda belum menyadari bahwa ada nilai hilang). Artinya, nilai default untuk na.rm sebaiknya FALSE.

Latihan ini adalah bagian dari kursus

Pengantar Penulisan Fungsi di R

Lihat Kursus

Petunjuk latihan

  • Perbarui definisi cut_by_quantile() sehingga argumen na.rm bernilai default FALSE.
  • Hapus argumen na.rm dari pemanggilan cut_by_quantile().

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Set the default for na.rm to FALSE
cut_by_quantile <- function(x, n = 5, na.rm, labels, interval_type) {
  probs <- seq(0, 1, length.out = n + 1)
  qtiles <- quantile(x, probs, na.rm = na.rm, names = FALSE)
  right <- switch(interval_type, "(lo, hi]" = TRUE, "[lo, hi)" = FALSE)
  cut(x, qtiles, labels = labels, right = right, include.lowest = TRUE)
}

# Remove the na.rm argument from the call
cut_by_quantile(
  n_visits, 
  na.rm = FALSE, 
  labels = c("very low", "low", "medium", "high", "very high"),
  interval_type = "(lo, hi]"
)
Edit dan Jalankan Kode