Replace safely() with possibly()

Once you have figured out how to solve an issue with safely(), (e.g., output an NA in place of an error), swap out safely() with possibly(). possibly() will run through your code and implement your desired changes without printing out the error messages.

You'll now map() over log() again, but you will use possibly() instead of safely() since you already know how to resolve your errors.

This exercise is part of the course

Foundations of Functional Programming with purrr

View Course

Exercise instructions

  • map() over the list provided to take the log() of each element, using possibly().
  • Use NA_real_ to fix any elements that are not the right data type.

Hands-on interactive exercise

Have a go at this exercise by completing this sample code.

# Take the log of each element in the list
list(1, "I can", 10, 0, "purrr") %>% 
  map(___(function(___){
    log(___)
}, ___))