Mulai sekarangMulai 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 merupakan bagian dari kursus

Pengantar Penulisan Fungsi di R

Lihat Kursus

Instruksi latihan

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

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# 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