Numeriska standardvärden
cut_by_quantile() omvandlar en numerisk vektor till en kategorisk variabel där kvantiler definierar brytpunkterna. Det är en användbar funktion, men just nu måste du ange fem argument för att den ska fungera. Det är onödigt omständligt.
Genom att ange standardargument kan du göra funktionen enklare att använda. Vi börjar med n, som anger hur många kategorier x ska delas in i.
En numerisk vektor med antalet besök till Snake River finns tillgänglig som n_visits.
Den här övningen är en del av kursen
Introduktion till att skriva funktioner i R
Övningsinstruktioner
- Uppdatera definitionen av
cut_by_quantile()så att argumentetnfår standardvärdet5. - Ta bort argumentet
nfrån anropet tillcut_by_quantile().
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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]"
)