始める無料で始める

複数の変数タイプを用いたモデルベースの補完

条件付き分布からの抽出を組み込んだロジスティック回帰補完関数をうまく実装できましたね。かなり高度な統計処理をコードで表現しました。この演習では、これまでに学んだモデルベースの補完に関する知識を組み合わせて、tao データの異なる種類の変数を補完します。

前の章と同様に変数をループ処理し、次の2つの変数を補完してください。

  • is_hotair_temp から作成された新しい二値変数で、air_temp が26度以上の場合は1、それ以外は0
  • humidity:これまでにも扱ってきた連続変数

以前学んだ線形回帰関数と、自分で作成したロジスティック回帰関数の両方を使います。さっそく始めましょう!

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

R による欠損データの補完処理

コースを見る

演習の手順

  • is_hot が元々欠損していた箇所を NA に設定してください。
  • sea_surface_temp のみを予測変数として、impute_logreg() 関数を使い、ロジスティック回帰is_hot を補完してください。
  • humidity が元々欠損していた箇所を NA に設定してください。
  • sea_surface_tempair_temp を予測変数として、線形回帰humidity を補完してください。

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

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

# Initialize missing values with hot-deck
tao_imp <- hotdeck(tao)

# Create boolean masks for where is_hot and humidity are missing
missing_is_hot <- tao_imp$is_hot_imp
missing_humidity <- tao_imp$humidity_imp

for (i in 1:3) {
  # Set is_hot to NA in places where it was originally missing and re-impute it
  ___ <- NA
  tao_imp <- ___(tao_imp, ___ ~ ___)
  # Set humidity to NA in places where it was originally missing and re-impute it
  ___ <- NA
  tao_imp <- ___(tao_imp, ___ ~ sea_surface_temp + ___)
}
コードを編集して実行