sapply ne peut pas simplifier, que faire ?
Il semble que nous ayons touché le jackpot avec sapply(). Dans tous les exemples présentés jusqu'à présent, sapply() a été capable de simplifier agréablement la sortie plutôt volumineuse de lapply(). Mais, comme dans la vie, il y a des choses que l'on ne peut pas simplifier. Comment réagit sapply() réagit-il ?
Nous avons déjà créé une fonction, below_zero(), qui prend un vecteur de valeurs numériques et renvoie un vecteur qui ne contient que les valeurs strictement inférieures à zéro.
Cet exercice fait partie du cours
R niveau intermédiaire
Instructions
- Appliquez
below_zero()surtempen utilisantsapply()et stockez le résultat dansfreezing_s. - Appliquez
below_zero()surtempen utilisantlapply(). Enregistrez la liste obtenue dans une variablefreezing_l. - Comparez
freezing_sàfreezing_là l'aide de la fonctionidentical()fonction.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# temp is already prepared for you in the workspace
# Definition of below_zero()
below_zero <- function(x) {
return(x[x < 0])
}
# Apply below_zero over temp using sapply(): freezing_s
# Apply below_zero over temp using lapply(): freezing_l
# Are freezing_s and freezing_l identical?