前回はヒストグラムの説明をしました。今回は、いよいよ探索的データ解析の中身に入っていきます。第1章に登場するのが幹葉図 (stem-and-leaf) です。幹葉図は、カンヨウズと読んだりミキハズと読んだりするようです。前回のヒストグラムの説明で使った、以下のソフトウェアシステムの構成要素毎の詳細設計書枚数で、幹葉図を描いてみます。
285, 38, 321, 1060, 501, 1080, 136, 265, 106, 986, 45, 471, 422, 185, 1072, 269,
889, 2453, 82
幹葉図を描くのにExcelは不要で、単に次のようにデータを並べればよいのです。
**には00~99の数字が入ります。例えば1**は、100枚~199枚というヒストグラムで言えば一つの区間を意味します。同様に、***には000~999の数字が入ります。幹葉図の作り方は、データの最小値と最大値を考慮し、まず、縦線の左側に0**から2***までの区間を作っておきます。このようにしておけば、後は数字が並んでいる順 (285, 38, 321, ・・・, 82) に各区間にデータの下2桁(1000以上になったら下3桁)をコンマで区切って描いていけばよいのです。こうすることで、データを大きさの順に並べ変えるといったことはしなくても、間違えることは少なくなります。
以下は、前回のヒストグラムです。
お分かりのように、ヒストグラムを縦にするとほぼ幹葉図になります。ヒストグラムの各棒の長さが、幹葉図の縦線の右側の数字の数になることが分かります。ほぼ幹葉図と書いたのは、この幹葉図だとヒストグラムに比べて外れ値は一見分かりにくくなるからです。幹葉図の場合には、*の数に気を付けなければなりません。9**までは区間の幅は100なのですが、1***からは区間の幅が1000になるのです。したがって、ヒストグラムと同じイメージを保ちたければ、区間の幅を10**, 11**, 12** ・・・と最後まで100で統一すればよいのです。かなりのスペースはとることになりますが、ヒストグラムと同様の図にすることができます。
ヒストグラムだと元のデータの正確な値は分かりませんが、幹葉図なら分かります。並べ方を工夫しただけで、元のデータをそのまま描いたのが幹葉図なのです。この単純な発想の素晴らしさには脱帽です。
ヒストグラムのときに悩む区間の幅についても、幹葉図であれば悩むことはありません。10とか100といった幅で描くことになるのです。しかし、10や100だと粗過ぎて分布がよく分からない、という場合には、英語民族の発想ではありますが、次のようなアイディアも書かれています。
# :0と1 注)参照
t :2 (two) と3 (three)
f :4 (four) と5 (five)
s :6 (six) と7 (seven)
・:8と9
例えば、以下のようなデータがあったとします。
27, 28, 15, 23, 14, 12, 12, 15, 16, 11, 22, 14, 15, 13, 10
これを、以下の幹葉図にします。
これでは分布がよく分からないというときに、次のようにします。
これで、分布が少し見えてくるというわけです。
探索的データ解析には、この他にも様々な表現方法を使った幹葉図が、これでもかというほど出てきます。ちょっとした工夫で、どんなデータにでも使えるから考えてごらん、と言われているような気になります。
注)原著は0と1の記号は、# ではなく* を使っています。今回のブログでは * は、0~9の意味で統一した方が分かりやすいと思いましたので # を使いました。