Opérations pliables (I)
Une opération qui donne le même résultat selon que vous l’appliquez à l’ensemble d’un jeu de données ou à des blocs de ce jeu de données, puis aux résultats de ces blocs, est parfois dite pliable (foldable). Les opérations max() et min() en sont un exemple.
Ici, nous avons défini une version pliable de la fonction range() qui accepte soit un vecteur, soit une liste de vecteurs.
Vérifiez que la fonction fonctionne en la testant sur le jeu de données des prêts hypothécaires.
Cet exercice fait partie du cours
<cours>Traitement de données à grande échelle en R</cours>Instructions de l’exercice
- Vérifiez que
foldable_range()fonctionne sur la colonne"record_number"du jeu de donnéesmort.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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
___