欠損値
Missing Data ・ けっそんち
記録されなかった値。欠け方の仕組みを見極めて除外・補完を選ばないと分析が歪む
概要
欠損値は、本来記録されるはずだったのに記録されなかった値のことです。アンケートの無回答、センサーの故障による記録漏れ、システム移行で失われた項目 — 現実のデータには、ほぼ必ず穴が空いています。表計算ソフトの空白セル、プログラミング言語の NA や null、「-999」のような欠損を表す約束の値など、表現はさまざまですが、いずれも「値が無い」という情報を運んでいます。
欠損値が厄介なのは、単に「データが減る」からではありません。欠け方に偏りがあると、残ったデータが元の集団を代表しなくなり、平均も割合も相関もすべて歪むからです。たとえば「高収入の人ほど収入の設問に答えない」調査で無回答を除外すれば、平均収入は実際より低く推定されます。つまり欠損値の処理とは、値の穴埋め作業である以前に、「なぜ欠けたのか」という仕組みを見極める推論の問題なのです。
そのため実務のデータ分析では、分析の本題に入る前に「どの変数がどれくらい、どんなパターンで欠けているか」を確かめることが標準の手順になっています。外れ値の確認と並んで、データの品質を左右する最初の関門と言えます。
なぜ生まれたか
欠損値が「まじめに理論化すべき問題」と認識されたのは、意外に新しく1970年代です。それまでの統計理論は、実験計画のように完全なデータを前提に組み立てられており、欠損への現場の対処は「欠けた行をまるごと捨てる」「平均で埋める」といった場当たり的なものでした。しかし社会調査や医学の追跡調査が大規模化すると、脱落や無回答が無視できない規模になり、捨てても埋めても結果が歪む事例が積み上がっていきます。困っていたのは、「どんなときに捨ててよく、どんなときに歪むのか」を判断する理論的な基準が存在しなかったことでした。
この空白を埋めたのが、1976年のドナルド・ルービンによる欠損メカニズムの分類(MCAR / MAR / MNAR)です。「欠け方が何に依存しているか」で欠損を3種類に整理し、それぞれでどの処理が正当かを示したこの枠組みによって、欠損値処理は勘と慣習から理論のある手続きに変わりました。その後ルービンらは、欠損の不確かさごと扱う多重代入法を開発し、現在の統計ソフトに標準搭載される定番手法になっています。
詳細
欠け方の3分類 — MCAR・MAR・MNAR
欠損値処理の出発点は、欠け方の仕組み(欠損メカニズム)を3つに分類することです。MCAR(完全にランダムな欠損)は、欠けるかどうかがどのデータとも無関係な場合で、通信エラーでランダムに記録が飛んだようなケースです。MAR(観測データに依存する欠損)は、欠けやすさが観測できている他の変数で説明できる場合で、「高齢層ほど無回答が多い(が、年齢は分かっている)」ようなケースです。MNAR(欠けた値自体に依存する欠損)は、欠けやすさがまさにその欠けた値に依存する場合で、「収入が高い人ほど収入を答えない」ようなケースです。
重要なのは、この分類が「どの処理なら結果が歪まないか」を直接決めることです。MCARなら欠けた行を除外しても偏りは生じません(件数が減るだけ)。MARなら、除外は偏りますが、観測されている変数を使った補完で補正できます。MNARは観測データだけからは欠け方を再現できないため、どんな補完でも原理的に歪みが残り、感度分析(欠け方の仮定を変えて結果の変化を見る)で影響を見積もるしかありません。しかも、手元のデータからMARとMNARを確実に区別する方法はなく、最終的にはデータの取られた文脈からの判断になります。
除外という選択肢とその代償
最も単純な処理は、欠損を含む行をまるごと除外するリストワイズ削除です。実装が容易で多くのソフトの既定動作ですが、代償は2つあります。第一に、変数が多いと「どこか1つでも欠けた行」が大量に発生し、データの大半を捨てることになりかねません。第二に、欠け方がMCARでない限り、残ったデータは偏った標本になり、推定が系統的に歪みます。除外が正当化できるのは、欠損がごく少ないか、MCARと信じられる根拠があるときに限られます。
補完 — 単一代入から多重代入へ
除外の代わりに値を埋めるのが補完(代入)です。古典的なのは代表値で埋める平均値代入ですが、これは「全員が平均どおり」という架空のデータを作るため、ばらつきが実際より小さく見積もられ、相関も弱まるという副作用があります。回帰で予測した値を埋める方法も、埋めた値を「確実に分かっている値」として扱う点で同じ問題を抱えます。どの単一代入も、欠損に伴う不確かさを消してしまうのです。
この問題への現在の標準解が多重代入法です。欠損部分をもっともらしい値+乱数のゆらぎで埋めたデータセットを複数(たとえば20個)作り、それぞれで同じ分析を行い、結果を統合します。complete なデータセット間で結果がばらつく分が「欠損による不確かさ」として推定に反映されるため、単一代入のように自信過剰な結論になりません。MARの仮定のもとで理論的な正当性があり、主要な統計ソフトやライブラリで手軽に使えます。
実務の作法 — まず欠損のパターンを見る
処理方法の選択より先にやるべきことは、欠損そのものの観察です。変数ごとの欠損率を集計し、欠損の位置を可視化して、「特定の変数に集中していないか」「特定の行(回答者・期間)に集中していないか」「複数の変数が同時に欠けるパターンはないか」を確かめます。欠損が特定の時期に固まっていればシステム障害、特定の設問に固まっていれば設問設計の問題が疑われ、対処もデータ処理ではなく収集プロセスの改善になります。また「欠けていること」自体が情報になる場合もあります(例: 任意入力欄の未記入は関心の低さを示す)。欠損フラグを変数として残す、という選択肢も含めて、欠損は消すべき汚れではなく読むべきシグナルとして扱う — これが欠損値と付き合う基本姿勢です。
