Foldable-operationer (I)
En operation sägs ibland vara foldable om den ger samma resultat oavsett om du tillämpar den på hela datamängden eller på delar av den och sedan på delresultaten. max() och min() är exempel på sådana operationer.
Här har vi definierat en foldable-variant av funktionen range() som tar antingen en vektor eller en lista av vektorer.
Kontrollera att funktionen fungerar som förväntat genom att testa den på bolånedatamängden.
Den här övningen är en del av kursen
Skalbar databehandling i R
Övningsinstruktioner
- Kontrollera att
foldable_range()fungerar på kolumnen"record_number"i datamängdenmort.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
foldable_range <- function(x) {
if (is.list(x)) {
# If x is a list then reduce it by the min and max of each element in the list
c(Reduce(min, x), Reduce(max, x))
} else {
# Otherwise, assume it's a vector and find its range
range(x)
}
}
# Verify that foldable_range() works on the record_number column
___