purrr でデータを数値に変換する
sw_people データセットでは、Star Wars の一部のキャラクターの身長が不明になっています。キャラクターの出身惑星ごとに身長がどう異なるかを探索するには、R が身長と欠損値を正しく区別できるようにコードを書く必要があります。現在、欠損値は "unknown" として入力されていますが、NA にしたいところです。この演習では、map() と ifelse() を組み合わせてこの問題を解決します。
この演習はコースの一部です
purrr で学ぶ関数型プログラミング入門
演習の手順
sw_peopleデータセットを読み込みます。sw_peopleに対して map を実行し、"height"を取り出します。- その出力に対してさらに map を実行し、要素が "unknown" の場合は
NAに置き換え、それ以外はas.numeric()で数値に変換します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Load sw_people data
data(___)
# Map over sw_people and pull out the height element
height_cm <- map(___, ___) %>%
map(function(x){
ifelse(___ == "unknown",NA,
as.numeric(___))
})