Quand sapply ne peut pas simplifier, on fait quoi?
On dirait qu'on a touché le gros lot avec sapply(). Dans tous les exemples jusqu'ici, sapply() a réussi à simplifier proprement la sortie plutôt volumineuse de lapply(). Mais, comme dans la vie, il y a des choses qu'on ne peut pas simplifier. Comment sapply() réagit-il?
Nous avons déjà créé une fonction, below_zero(), qui prend un vecteur de valeurs numériques et retourne un vecteur ne contenant que les valeurs strictement inférieures à zéro.
Cette activité fait partie du cours
R intermédiaire
Instructions de l’exercice
- Appliquez
below_zero()àtempavecsapply()et enregistrez le résultat dansfreezing_s. - Appliquez
below_zero()àtempaveclapply(). Enregistrez la liste résultante dans une variablefreezing_l. - Comparez
freezing_sàfreezing_là l'aide de la fonctionidentical().
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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?