始める無料で始める

replace_with_na のスコープ付きバリアントを使う

NA への置換で同じコードを繰り返さないようにするには、replace_with_na() の「スコープ付きバリアント」を使います。

  • replace_with_na_at()
  • replace_with_na_if()
  • replace_with_na_all()

置換の書き方は次のとおりです。

~.x == "N/A"

これは "N/A" と等しいすべてのケースを置き換えます。

~.x %in% c("N/A", "missing", "na", " ")

"N/A""missing""na"、または " " を含むすべてのケースを置き換えます。

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

Rでの欠損データの扱い方

コースを見る

演習の手順

データセット pacman について、同じ特別な欠損値 "N/A""missing""na"" " を置き換えてください。

  • replace_with_na_at() を使って yearmonthday を対象にします。
  • replace_with_na_if() を使って文字型の変数のみを対象にします。
  • replace_with_na_all() を使ってすべての変数を対象にします。

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

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

# Use `replace_with_na_at()` to replace with NA
replace_with_na_at(pacman,
                   .vars = c(___, ___, ___), 
                   ~.x %in% c(___, ___, ___, ___))

# Use `replace_with_na_if()` to replace with NA the character values using `is.character`
replace_with_na_if(pacman,
                   .predicate = ___, 
                   ~.x %in% c(___, ___, ___, ___))

# Use `replace_with_na_all()` to replace with NA
replace_with_na_all(___, ___ %in% c(___, ___, ___, ___))
コードを編集して実行