Appliquer les fonctions qui renvoient NULL
Dans tous les exercices précédents, on a supposé que les fonctions appliquées aux vecteurs et aux listes renvoyaient un résultat significatif. Par exemple, la fonction tolower()
renvoie simplement les chaînes de caractères avec les caractères en minuscules. Ce ne sera pas toujours le cas. Supposons que vous souhaitiez afficher la structure de chaque élément d'une liste. Vous pouvez utiliser la fonction str()
qui renvoie NULL
:
lapply(list(1, "a", TRUE), str)
Cet appel renvoie en fait une liste, de la même taille que la liste d'entrée, contenant toutes les valeurs NULL
. D'autre part, en appelant
str(TRUE)
à lui seul n'imprime que la structure de la logique à la console, et non NULL
. En effet, les str()
utilise invisible()
dans les coulisses, ce qui renvoie une copie invisible de la valeur de retour, NULL
dans ce cas. Cela évite qu'il soit imprimé lorsque le résultat de str()
n'est pas affecté.
Quel sera le résultat du morceau de code suivant (split_low
est déjà disponible dans l'espace de travail) ? Essayez de raisonner sur le résultat avant de l'exécuter simplement dans la console !
lapply(split_low, function(x) {
if (nchar(x[1]) > 5) {
return(NULL)
} else {
return(x[2])
}
})
Cet exercice fait partie du cours
Intermédiaire R
Exercice interactif pratique
Passez de la théorie à la pratique avec l’un de nos exercices interactifs
