Valori predefiniti numerici
cut_by_quantile() converte un vettore numerico in una variabile categoriale in cui i quantili definiscono i punti di taglio. È una funzione utile, ma al momento devi specificare cinque argomenti per farla funzionare. È troppo, sia in termini di ragionamento che di digitazione.
Specificando argomenti predefiniti, puoi renderla più semplice da usare. Iniziamo con n, che indica in quante categorie suddividere x.
Un vettore numerico con il numero di visite allo Snake River è fornito come n_visits.
Questo esercizio fa parte del corso
Introduzione alla scrittura di funzioni in R
Istruzioni dell'esercizio
- Aggiorna la definizione di
cut_by_quantile()in modo che l'argomentonabbia come valore predefinito5. - Rimuovi l'argomento
ndalla chiamata acut_by_quantile().
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Set the default for n to 5
cut_by_quantile <- function(x, n, 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 n argument from the call
cut_by_quantile(
n_visits,
n = 5,
na.rm = FALSE,
labels = c("very low", "low", "medium", "high", "very high"),
interval_type = "(lo, hi]"
)