Začněte nyníZačněte zdarma

Logické výchozí hodnoty

cut_by_quantile() se teď používá o něco pohodlněji, ale stále musíš vždy explicitně zadat argument na.rm. Ten slouží k odstranění chybějících hodnot — funguje stejně jako argument na.rm ve funkcích mean() nebo sd().

U funkcí, které mají argument pro odstranění chybějících hodnot, je osvědčeným postupem neodstraňovat je ve výchozím nastavení (pro případ, že bys chybějící hodnoty přehlédl/a). Výchozí hodnota na.rm by tedy měla být FALSE.

Toto cvičení je součástí kurzu

Introduction to Writing Functions in R

Zobrazit kurz

Pokyny k cvičení

  • Uprav definici funkce cut_by_quantile() tak, aby měl argument na.rm výchozí hodnotu FALSE.
  • Odstraň argument na.rm z volání funkce cut_by_quantile().

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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]"
)
Upravit a spustit kód