kNN のコツとヒント I:ドナーの重み付け
kNN 補完のよく使われるバリエーションとして、距離加重集約と呼ばれる手法があります。これは、欠損値の代替値を得るために近傍点の値を集約する際、加重平均を使用し、各近傍点までの距離の逆数を重みとする方法です。その結果、より近い近傍点が補完値により大きな影響を与えます。
この演習では、tao データを補完しながら距離加重集約を適用します。kNN() 関数に追加の引数を2つ渡すだけで実現できます。さっそく試してみましょう。
この演習はコースの一部です
R による欠損データの補完処理
演習の手順
VIMパッケージを読み込みます。- 近傍点の集約に距離加重平均を使用して、kNN で
humidityを補完します。numFunとweightDistの引数を指定する必要があります。 - 結果を確認するためのマージンプロットのコードはすでに用意されています。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Load the VIM package
___(___)
# Impute humidity with kNN using distance-weighted mean
tao_imp <- ___(tao,
k = 5,
variable = "humidity",
___ = ___,
___ = ___)
tao_imp %>%
select(sea_surface_temp, humidity, humidity_imp) %>%
marginplot(delimiter = "imp")