はじめに
データを確認していると、ほかの値から大きく離れた値、通常とは違って見える値、値そのものが入っていない箇所が見つかることがあります。これらは外れ値・異常値・欠損値と呼ばれますが、同じものではありません。
特に注意したいのは、外れ値や異常値を見つけたからといって、すぐに削除してよいとは限らないことです。入力ミスのこともあれば、実際に起きた珍しい事象が記録されていることもあります。欠損値も、単に埋めればよいのではなく、なぜ値が欠けたのかを確認してから扱いを決める必要があります。
この記事では、外れ値・異常値・欠損値の違いを整理し、見つけた後に原因を確認して、修正・除外・保持・補完のどれを選ぶか判断する考え方を解説します。
この記事で分かること
- 外れ値・異常値・欠損値の違い
- 外れ値や異常値をすぐ削除してはいけない理由
- 値が不自然に見えたときの原因確認の進め方
- 外れ値・異常値・欠損値への基本的な対応方法
外れ値・異常値・欠損値の違い
まず、3つの違いを整理します。
| 種類 | どのような状態か | 主な原因の例 | 判断するときのポイント |
|---|---|---|---|
| 外れ値 | ほかの観測値から大きく離れている | 入力ミス、測定異常、条件の違い、実際に起きた希少な事象 | 離れているだけでは誤りと断定できない |
| 異常値 | 通常・期待される状態と比べて不自然な観測 | システム異常、業務上の異常、入力・測定の問題、希少な事象 | 何を「通常」とするかで意味が変わる |
| 欠損値 | 本来記録されるはずの値が存在しない | 未回答、取得失敗、連携漏れ、入力漏れ | 値の異常ではなく「値がない」状態 |
外れ値
外れ値(outlier)は、ほかの観測値から大きく離れている値です。統計的に目立つ位置にあっても、それだけで誤データとは限りません。
たとえば、通常より非常に高い売上が記録されていても、大口注文が実際に発生していたのであれば、その値は正しい観測です。一方、桁を一つ多く入力した結果であれば、入力ミスとして修正対象になります。
つまり、外れ値という言葉は「ほかの値から離れている」という特徴を表すものであり、正しい値か誤った値かは原因を調べて判断します。
異常値
異常値は、通常または期待される状態と比べて不自然と判断される値や観測を指します。英語では文脈によって anomaly、anomalous observation などの表現が使われます。
外れ値と異常値は、分野や目的によって重なって使われることがあります。たとえば、機械のセンサー値が急に大きく変化した場合、統計的には外れ値として扱い、設備監視では異常な観測として扱うことがあります。
そのため、「異常値なら入力ミスなので削除する」と一律に考えるのではなく、何を通常状態と定義しているのか、観測そのものが正しいのかを確認することが重要です。
欠損値
欠損値(missing value)は、本来記録されるはずの値が存在しない状態です。外れ値や異常値のように「値が大きい・小さい」という問題ではなく、値そのものが欠けています。
たとえば、アンケートの未回答、センサーの通信断、システム連携の失敗などで欠損が生じます。なお、0や空文字が必ず欠損値とは限りません。データの仕様によっては意味のある値として使われるため、どの表現を欠損として扱うかを先に確認します。
外れ値と異常値は明確に分かれないことがある
外れ値と異常値は、いつでも明確に二分できる用語ではありません。重要なのは名称を無理に決めることではなく、「ほかの観測から離れているか」「通常状態から外れているか」「その原因が分かっているか」を分けて考えることです。
たとえば、1日の注文金額が普段の10倍になっていた場合、その値は分布上の外れ値かもしれません。しかし、大口顧客の注文という事実が確認できれば、削除すべき誤りではありません。反対に、単位の設定ミスで金額が10倍になっていたのであれば、値が生まれた原因を修正する必要があります。
外れ値・異常値を見つけることと、その値をどう処理するかは別の判断です。
見つけたら最初に原因を確認する
外れ値や異常値、欠損値を見つけたら、処理方法を決める前に原因を確認します。次の順序で見ると整理しやすくなります。
- データが発生した条件を確認する いつ、どの処理や業務で、どの単位のデータとして記録されたかを確認します。データの発生条件や頻度を把握する考え方は、データの発生トリガー・頻度・統計量を把握する重要性で解説しています。
- 元データや記録方法を確認する 入力ミス、単位の違い、測定機器の不具合、システム連携漏れなどがないかを確認します。真の値を確認できる場合は、根拠を残したうえで修正できます。
- どこに偏って発生しているか確認する 特定の期間、拠点、商品、利用者などに集中していないかを見ます。データ全体の品質を確認するときは、データ分析の質と量を徹底検証!チェックポイントと重要ポイントも参考になります。
- 分析目的への影響を確認する 値を残した場合と除いた場合で結論が変わるか、欠損を補完したことで結果が不自然に変わらないかを確認します。探索的データ分析(EDA)とは?目的と進め方をわかりやすく解説で扱うように、分布やデータ品質を広く確認してから次の分析へ進むことが重要です。
外れ値・異常値への対応方法
原因を確認した後は、値の性質と分析目的に合わせて対応します。
- 誤入力などで正しい値を確認できる場合は修正する 元帳や原データなどから真の値を確認できるなら、推測ではなく確認できた値へ修正します。
- 誤りであり、正しい値を確認できない場合は除外を検討する 分析対象として使えないことが確認できる場合は、理由と基準を記録したうえで除外します。
- 正しい希少事象であれば保持する 大口注文や災害時の需要急増など、実際に起きた重要な事象なら、外れて見えることだけを理由に削除しません。
- 外れ値の影響が大きい場合は分析方法を見直す 中央値など外れ値の影響を受けにくい代表値を使う、結果を外れ値あり・なしの両方で確認するなど、分析目的に応じて影響を確かめます。
大切なのは、特定のしきい値を超えたから自動的に削除するのではなく、原因と分析目的を確認して判断することです。
欠損値への対応方法
欠損値は、まず「どれくらい欠けているか」「どこで欠けているか」「なぜ欠けたか」を確認します。特定条件で欠損が集中している場合、単純に行を削除すると分析結果が偏る可能性があります。
基本的な対応は、次のように整理できます。
- 元データから復元できるなら修正する
- 分析への影響が小さく、除外理由を説明できるなら行や項目の除外を検討する
- 分析に必要な場合は、平均値・中央値・最頻値などによる補完を検討する
- 欠損自体に意味がある場合は、欠損であることを情報として残す方法も検討する
補完には単純な方法だけでなく、ほかの特徴量や近い観測を利用する方法もあります。ただし、どの補完方法が適切かはデータの性質と分析目的によって異なるため、「欠損があるから平均値で埋める」と一律に決めないことが重要です。
外れ値の検出方法は別記事で確認
外れ値を見つける方法には、箱ひげ図、散布図、ヒストグラム、Zスコア、IQRなどがあります。
これらの具体的な使い方は、外れ値の見つけ方:ボックスプロット・Zスコア・IQRの活用法で詳しく解説しています。
検出方法で示される境界は、確認すべき候補を見つけるための基準です。境界を超えた値をそのまま自動削除するのではなく、本記事で整理した原因確認と対応判断につなげてください。
まとめ
外れ値・異常値・欠損値は、データ品質を確認するときによく出てくる言葉ですが、同じ状態を表しているわけではありません。
- 外れ値:ほかの観測値から大きく離れている値
- 異常値:通常・期待される状態から外れていると判断される観測
- 欠損値:本来記録されるはずの値が存在しない状態
外れ値や異常値は、見つけた時点では「確認が必要な値」です。入力ミスなどの誤りなのか、実際に起きた意味のある希少事象なのかを確認してから、修正・除外・保持を判断します。欠損値も、発生原因や偏りを確認したうえで、削除や補完を選びます。
「見つけること」と「処理すること」を分けて考えると、不自然に見えるデータを機械的に捨てず、分析目的に合った対応を選びやすくなります。