IniziaInizia gratis

Predefiniti NULL

La funzione cut() usata da cut_by_quantile() può fornire automaticamente etichette sensate per ogni categoria. Il codice per generare queste etichette è abbastanza complicato, quindi, invece di comparire direttamente nella firma della funzione, l’argomento labels ha come valore predefinito NULL, e i dettagli del calcolo sono mostrati nella pagina di aiuto di cut() (docs).

Questo esercizio fa parte del corso

Introduzione alla scrittura di funzioni in R

Visualizza il corso

Istruzioni dell'esercizio

  • Aggiorna la definizione di cut_by_quantile() in modo che l’argomento labels abbia come valore predefinito NULL.
  • Rimuovi l’argomento labels dalla chiamata a cut_by_quantile().

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Set the default for labels to NULL
cut_by_quantile <- function(x, n = 5, na.rm = FALSE, 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 labels argument from the call
cut_by_quantile(
  n_visits,
  labels = c("very low", "low", "medium", "high", "very high"),
  interval_type = "(lo, hi]"
)
Modifica ed esegui il codice