Valori implicite numerice
cut_by_quantile() convertește un vector numeric într-o variabilă categorică, unde cuantilele definesc punctele de tăiere. Este o funcție utilă, dar în prezent trebuie să specifici cinci argumente pentru a o folosi. Asta înseamnă prea multă gândire și prea mult scris.
Specificând argumente implicite, o poți face mai ușor de utilizat. Să începem cu n, care specifică în câte categorii să fie împărțit x.
Un vector numeric cu numărul de vizite la Snake River este disponibil ca n_visits.
Acest exercițiu face parte din cursul
Introducere în scrierea funcțiilor în R
Instrucțiuni pentru exercițiu
- Actualizează definiția funcției
cut_by_quantile()astfel încât argumentulnsă aibă valoarea implicită5. - Elimină argumentul
ndin apelul funcțieicut_by_quantile().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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]"
)