欠損値補完

このページでは、データセット内の欠損値に対して、統計的手法を用いた補完処理の機能を提供します。

解説

欠損値とは

欠損値とは、データセット内で値が記録されていない箇所を指します。 欠損値は統計解析において重要な問題であり、適切に処理しないと解析結果に偏りが生じる可能性があります。

  • 欠損の種類:
    • MCAR (Missing Completely At Random): 欠損が完全にランダムに発生
    • MAR (Missing At Random): 観測されたデータに基づいて欠損が発生
    • MNAR (Missing Not At Random): 欠損自体に意味がある場合

補完手法の分類

個別補完手法

各変数を独立して補完する手法です。変数間の関係性を考慮しません。

  • 数値変数向け:
    • 平均値補完: 欠損値を該当変数の平均値で置換
    • 中央値補完: 欠損値を該当変数の中央値で置換
    • 線形補間: 前後の値を用いた線形補間
    • スプライン補間: スプライン関数を用いた滑らかな補間
    • カルマンスムージング: 時系列データに適用される高度な補間手法
  • カテゴリ変数向け:
    • 最頻値補完: 欠損値を該当変数の最頻値で置換
  • 全データ型対応:
    • k近傍法 (kNN): 類似したデータポイントの値を用いて補完

多重代入法 (MICE)

MICE (Multivariate Imputation by Chained Equations) は、変数間の関係性を考慮した高度な補完手法です。

  • 特徴:
    • 各変数を他の変数で予測するモデルを構築
    • 反復的に補完値を更新し、収束させる
    • 複数の補完データセットを生成し、不確実性を考慮
  • MICEの補完手法:
    • PMM (Predictive Mean Matching): 数値変数のデフォルト手法
    • ロジスティック回帰: 二値カテゴリ変数
    • 多項ロジスティック回帰: 多値カテゴリ変数
    • ランダムフォレスト: 全データ型に対応
    • 平均値補完: 単純な数値補完
    • 線形回帰: 正規分布を仮定した補完

MICE vs 個別補完の比較

項目 多重代入法 (MICE) 個別補完
変数間関係 考慮する 考慮しない
計算時間 長い 短い
補完精度 高い 中程度
適用場面 複雑なデータ 単純なデータ
不確実性 考慮可能 考慮しない

設定

基本設定

  • 補完対象変数: 欠損値を補完したい変数を選択します。
  • 予測変数: 補完の予測に使用する追加変数を選択します。
    • 空の場合は全変数が予測に使用されます。
    • 予測変数に欠損値がある場合は自動的に補完されます。

補完方式の選択

  • 多重代入法 (MICE) モード (推奨): 変数間の関係性を考慮した高精度な補完
    • デフォルト設定: MICEが自動的に最適な手法を選択
      • 数値変数→PMM (予測平均マッチング)
      • カテゴリ変数→ロジスティック回帰/多項ロジスティック回帰
      • すべての変数が相互に関連性を考慮して補完される
    • 個別指定: 各変数のMICE補完手法を手動で選択
      • 変数ごとにPMM、ランダムフォレスト、線形回帰等を指定
      • 変数間の関係性は維持されたまま、手法のみカスタマイズ
      • 例: 年齢→PMM、性別→ロジスティック回帰、収入→ランダムフォレスト
  • 個別補完モード: 変数ごとに独立した手法で補完

パラメータ設定

  • MICE 設定:
    • 繰り返し回数: 補完の収束に必要な反復回数 (通常5-10回)
  • k近傍法 設定:
    • k値: 近傍として使用するデータポイント数 (通常3-10個)
  • 乱数シード: 再現可能な結果を得るためのシード値

結果の解釈

統計量比較

補完前後の基本統計量 (平均値、標準偏差、中央値など) を比較し、補完が適切に行われたかを確認できます。

分布の比較

補完前後のデータ分布をヒストグラム (数値変数) や棒グラフ (カテゴリ変数) で視覚的に比較できます。理想的には、補完後の分布が元の分布と類似している必要があります。

注意事項

  • 欠損値補完は強力な手法ですが、安易な適用は誤った解釈につながりますから、手法について理解したうえで適切に適用する必要があります。
  • 欠損率が高い場合は、補完結果の信頼性が低下する可能性があります。
  • 補完はあくまで統計的推定であり、真の値を復元するわけではありません。
  • 補完結果は分析の前提条件や目的に応じて適切性を判断する必要があります。
  • カテゴリ変数での完全分離 (各カテゴリが明確に分かれている場合) では、一部の変数で補完が実行できない場合があります。
  • 補完前のデータの質 (測定誤差、外れ値など) は補完結果に影響するため、事前のデータクリーニングが重要です。
  • 時系列データでは、時間的順序を考慮した補完手法を使用する必要がありますが、Reactive stat ではサポートしておりません。
  • データ数が多く計算に時間がかかりすぎる場合には、クラウド R がタイムアウトしてしまいます。その場合は、通常の R での処理をお願いします。

参考資料

データ

設定

補完設定
変数名 変数タイプ 欠損値数 欠損値比率 補完方法
{{ column }} {{ getColumnType(column) }} {{ getMissingCount(column) }} {{ getMissingRatio(column) }}%
パラメータ設定
多重代入法 (MICE) の繰り返し回数
k近傍法 (kNN) のk値
乱数シード