始める無料で始める

safely() で NA に置き換える

リストに対して map() を使うとき、要素の中に型が合わないものがあると、期待した出力が得られません。たとえば各要素に数値計算を行いたいのに、ある要素が文字列だった場合は、単純に動作しません。

とても大きなリストでは、どこで何が原因で失敗したのかを見つけるのが大変です。そこで役立つのが safely() です。map() の呼び出しで得られた結果と、エラーが起きた場所の両方を確認できます。

この演習はコースの一部です

purrr で学ぶ関数型プログラミング入門

コースを見る

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Map safely over log
a <- list(1, "I can", 10, 0, "purrr") %>%
      map(___(___, otherwise = NA_real_)) %>%
    # Transpose the result
      transpose() 
コードを編集して実行