始める無料で始める

KNN 補完を使う

前の演習では、乳がんデータセットの欠損値を中央値で補完しましたが、欠損値への対処法はそれだけではありません。

中央値補完の代替として、k-nearest neighbors(KNN)補完があります。これは、現在の行に似ている他の行の値を使って欠損値を置き換える、より高度な補完方法です。実装は単純な中央値補完よりずっと複雑ですが、caret では train()preProcess 引数を使うことで簡単に試せます。モデル学習前の補完方法を変えるには、preProcess = "knnImpute" と指定するだけです。

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

Rで学ぶ caret を使った Machine Learning

コースを見る

演習の手順

breast_cancer_xbreast_cancer_y はワークスペースに読み込まれています。

  • train() 関数を使って、乳がんデータセットに glm モデルを当てはめ、knn_model という名前で作成します。
  • 欠損値の処理には KNN 補完を使います。

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

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

# Apply KNN imputation: knn_model
knn_model <- train(
  x = ___, 
  y = ___,
  method = ___,
  trControl = myControl,
  preProcess = ___
)

# Print knn_model to console
コードを編集して実行