ÎncepețiÎncepe gratuit

Valori implicite logice

cut_by_quantile() este acum ceva mai ușor de utilizat, dar tot trebuie să specifici argumentul na.rm de fiecare dată. Acesta elimină valorile lipsă—funcționează la fel ca argumentul na.rm din mean() sau sd().

Atunci când o funcție are un argument pentru eliminarea valorilor lipsă, cea mai bună practică este să nu le elimini implicit (în caz că nu ai observat că există valori lipsă în date). Prin urmare, valoarea implicită pentru na.rm ar trebui să fie FALSE.

Acest exercițiu face parte din cursul

Introducere în scrierea funcțiilor în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Actualizează definiția funcției cut_by_quantile() astfel încât argumentul na.rm să aibă valoarea implicită FALSE.
  • Elimină argumentul na.rm din apelul funcției cut_by_quantile().

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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]"
)
Editează și rulează codul