ヒストグラムでデータのバラツキを一発で把握する

本記事はスキルチェックリストの[データサイエンス力 No.67]「適切なデータ区間設定でヒストグラムを作成し、データのバラつき方を把握できる」に対応しています。

ヒストグラム

以前の記事では、データの特徴を1つの代表値で表す方法を学びましたね。
平均、中央値、最頻値の違いは?

今回は別の切り口からデータを俯瞰する方法を考えてみましょう。
こんなグラフをよく目にすることがあるかと思います。

よく見るヒストグラム

これはヒストグラムと呼ばれるグラフです。

データ群を区間ごとに区切り、各区間に属するデータの個数を棒グラフのような形で表現します。

実は平均値や中央値などの代表値は数多くのデータの集まりをたった1つの数値で表現するというある意味でムチャな試みです。そのため、生データからかなりの情報が欠落しています。

以前、30人の年収の平均値や中央値を求めましたが、それらの代表値からは「極端な高級取りがいる」という事実はわかりません。

ヒストグラムで整理すると、生データからの情報の欠落をかなり抑えることができ、データの偏りや極端な値が混じっていることも検知することができるのです。

以前の記事で取り上げたある会社の30人の年収データをもう1度見てみましょう

ロボ千代

299 278 275
293 357 332
324 282 331
272 308 263
357 406 1238
311 294 295
297 1288 330
319 242 1310
378 278 344
334 213 350

このデータをヒストグラムで表現するとこうなります。

年収ヒストグラム

右端の離れたところにいくつかデータがあることがわかりますね。つまり、極端に年収の高いデータがあるという事実を読み取ることができるわけです。

ヒストグラムのメリット

ヒストグラムを使うと、データ群の全体像を理解しやすくなります。直感的にもわかりやすいため、かなりよく使われるグラフです。

ヒストグラムの横軸を「階級」、縦軸を「度数」、度数を表す棒のことを「ビン」と呼びます。
各階級の真ん中の値をその区間を代表値ということで、「階級値」といいます。

ヒストグラムの形

単峰と多峰

山が1つだけの分布の形を「単峰(たんほう)」といいます。
山が複数ある分布の形は「多峰(たほう)」といいます。ヒストグラムが多峰の形を示す場合、異なる性質を持つ集団が混ざっている可能性があります。例えば、男女混合で身長のヒストグラムを描くと「男性の平均」と「女性の平均」とで山を2つ持つ多峰性の形となります。

データ区間の幅

ヒストグラムを作成する際に大切なのは、階級の幅です。というのも、ヒストグラムはこの階級幅が決まるとほぼ一意にグラフの形が決まってしまうからです。

例として次のデータについて階級幅を変えてヒストグラムを書いてみます。

階級幅を50万円としたヒストグラム

適切な階級のヒストグラム

階級幅を5万としたヒストグラム

階級が細かすぎるヒストグラム
階級幅が小さすぎるので、その階級に属する度数が分散してしまっています。階級幅が小さすぎると、生データを眺めるのと変わらなくなってしまいます。

階級幅を200万としたヒストグラム

階級が粗すぎるヒストグラム
階級幅が大きすぎるため、度数の散らばり方をうまく表せていません。

適切な階級幅とするために

ヒストグラムの階級幅、言い換えると、階級の数をどれくらいにするのが最適かは絶対的な正解はありません。
ひと目で見てそのデータの特徴をうまく表せているような階級数(階級幅)にすることが望ましいといえます。

現実的にはいくつか階級幅を変えてヒストグラムを作成してみて、そのデータ群の分布を最も適切に表現できていそうな階級幅を選ぶのが現実的だと思います。
また、適切な階級の数の目安を求める公式があるので、これを利用してみるのもよいかと思います。

スタージェスの公式
データ数を\(N\)とすると、適切な階級数を\(k\)は下記の式で求められる。
$$k = \log_2N+1$$

目安としていくつか例を示しておきます。

データ数 \(N\) 階級数 \(k\)
10 4
100 8
1000 11
10000 14

ヒストグラムのまとめ

平均値や中央値を求めて満足するのではなく、データ全体を俯瞰するためにヒストグラムを描いてみることをおすすめします。

ヒストグラムを描くことで、外れ値や分布の偏りなど重要な事実に気づくことができるからです。

ロボ千代

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です