1 目的

箱ひげ図 (box plot) は数値データ (numerical data) の分布を表すことができるグラフです。一度に多くの情報を表示することができ、非常に優れたグラフであるといえます。この記事では箱ひげ図から外れ値を見つける方法や、見つけた外れ値の扱い方を解説します。

2 箱ひげ図の構造

箱ひげ図の各部分が表すこと、箱ひげ図の見方などは箱ひげ図の見方で解説しています。箱ひげ図についてよく知らないという方は、先に上記リンク先の記事をご覧ください。

ここでは箱ひげ図についてごく簡単にだけ説明します。

箱ひげ図は主に以下の部分に分解できます (Figure 1):

  1. 最小値 (minimum value): データのうち最も小さい値
  2. 第一四分位数 (first quartile): データの25%がこの値よりも小さくなる数値
  3. 中央値 (median / second quartile): データを50%ずつに区切る数値
  4. 第三四分位数 (third quartile): データの75%がこの値よりも小さくなる数値
  5. 最大値 (maximum value): データのうち最も大きい値
  6. 四分位範囲 (IQR: Interquartile Range): 中央値を真ん中として、データの50%が含まれる範囲
  7. 外れ値 (outlier): データ中の他の値から大きく離れた値

今回注目する「外れ値」は箱ひげ図上では「白丸」などを使って表されます。

Figure 1: 箱ひげ図の各部の説明

3 箱ひげ図を使った外れ値の求め方

箱ひげ図から外れ値を求める際は、IQRと四分位数を使います。

3.1 箱ひげ図における最大値と最小値

外れ値を求めるにあたって、最初に箱ひげ図で表される最大値と最小値について少し詳しくお話しします。

各四分位数から大きく離れた値がデータ中に存在しない場合、Figure 1 に示したように「ひげ (whisker)」の両端はデータの最大値と最小値を表します。ところが各四分位数から大きく離れた値が存在する場合、これらの両端は全データの最大値、最小値を表すわけではありません。

具体的には以下の式を上限、下限とます。そしてこの範囲よりも外側にデータが存在する場合は、ひげの両端はこの範囲内に存在するデータの最大値、最小値を表します。

  • 上限: 第三四分位数 + IQR \times 1.5
  • 下限: 第一四分位数 - IQR \times 1.5

つまりひげの両端は必ずしも全データの最大値、最小値を表すわけではなく、上式の上限と下限で表される範囲内に含まれるデータにおける最大値、最小値を表しています

3.2 外れ値の求め方

ではこの上限または下限の外にあるデータはどうなるのでしょうか?これが「外れ値」です。要するにこの上限、下限よりも離れたデータは、他のデータから大きく離れた点であるとみなし、外れ値であると判断します。つまり箱ひげ図における外れ値とは、第一四分位数や第三四分位数からIQRの1.5倍よりも離れたデータのことを言うわけです。

Figure 1 においては外れ値が白丸で表されています。これらの点は第一四分位数や第三四分位数からIQRの1.5倍よりも離れたデータであり、外れ値とみなされます。結果としてひげの両端は上式の上限、下限に含まれるデータにおける最大値、最小値を表しています。

このように箱ひげ図を使うと、視覚的にわかりやすく外れ値の有無を確認することができます

4 箱ひげ図を使った外れ値の見つけ方

箱ひげ図における最大値、最小値は以下の上限、下限で決まる範囲に含まれるデータにおける最大値、最小値を表す:

  • 上限: 第三四分位数 + IQR \times 1.5
  • 下限: 第一四分位数 - IQR \times 1.5

この範囲の外にあるデータは「外れ値」と呼ばれ、白丸で表される。

5 見つけた外れ値の扱い方

では見つけた外れ値はどうすればよいのでしょうか?外れ値の扱い方は「外れ値の由来」や「解析の目的」によって異なります。

例えばデータの誤入力など本来のデータの分布に含まれない値であれば、外れ値を除去すると良いかもしれません。外れ値を除去しないままだと、データ全体の分布が本来の分布からずれてしまう可能性があります。

一方で外れ値は稀ではあるもののデータの本来の分布に含まれると考えられる場合、また異常値を検出したい場合などでは外れ値を含んだまま解析を進める必要があるかもしれません。例えば異常値を検出したいのに肝心の異常値 (外れ値) を除去してしまっては本末転倒ですよね?

外れ値の扱い方はその由来や解析の目的によって変わってきますので、慎重に検討する必要があることを覚えておきましょう。また外れ値を含めたのか除去したのか、その理由を含めて説明を行うことも重要でしょう。

箱ひげ図では視覚的に外れ値を把握することができますが、実際にどのデータ (何番目のデータ) が外れ値であるかはは箱ひげ図だけではわかりません。プログラミングコードなどで外れ値を抽出するなど別途対応が必要である点も覚えておきましょう。

6 Keywords

  • 箱ひげ図 (box plot)
  • 外れ値 (outlier)

7 Summay Questions

  1. 外れ値を視覚的に求めるにはどのような方法がありますか?
  2. あなたは箱ひげ図を使って外れ値を見つけようとしています。第三四分位数よりもIQRの1.7倍だけ大きな値がある場合、この値は箱ひげ図上で外れ値として表示されますか?
  3. 「外れ値は他の値からは大きく離れた値であり、データの分布を本来の分布からゆがめてしまう。したがって外れ値はデータから常に除去すべきである。」この主張は正しいでしょうか?また間違っている場合はその理由も答えましょう。

8 まとめ

箱ひげ図は視覚的に外れ値を見つける際にとても有用です。外れ値は闇雲に除去すればよいものではなく、外れ値の由来や目的に応じて慎重に判断する必要があります。視覚化は重要なツールです。外れ値の発見に、まずは箱ひげ図を使っていきましょう。