CommencerCommencez gratuitement

Remplacer avec NA grâce à safely()

Si vous appliquez map() à une liste et que l’un des éléments n’a pas le bon type de données, vous n’obtiendrez pas le résultat attendu. Par exemple, vous essayez peut‑être d’effectuer une opération mathématique sur chaque élément, mais l’un d’eux est de type caractère : cela ne fonctionnera tout simplement pas.

Avec une très grande liste, identifier où et pourquoi cela a échoué peut être compliqué. C’est là que safely() intervient : elle vous montre à la fois vos résultats et les endroits où des erreurs se sont produites dans votre appel à map().

Cet exercice fait partie du cours

<cours>Fondations de la programmation fonctionnelle avec purrr</cours>
Voir le cours

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Map safely over log
a <- list(1, "I can", 10, 0, "purrr") %>%
      map(___(___, otherwise = NA_real_)) %>%
    # Transpose the result
      transpose() 
Modifier et exécuter le code