第142回: 「統計の実務」3 インデックスプロット
◀前の記事へ 次の記事へ▶
≡ はじめに
前回は、統計解析ツールのRとRコマンダーのインストールをして、起動して、動くことを確認しました。今回から、統計解析対象のデータをグラフ化する話を始めます。グラフ化する目的はデータ群の特徴の視覚化です。
Rコマンダーのグラフメニューには、たくさんのグラフ名が並んでいます。

このnoteでは私が実務で使う頻度が高いものについて詳しく説明します。具体的には、「インデックスプロット」、「ヒストグラム」、「箱ひげ図」、「QQプロット」、「散布図行列」、「折れ線グラフ」の6つです。こちらの6つのグラフを説明した後に、説明していないグラフについてまとめて簡単に紹介します。
つまり、今回を含めて7回、グラフの話が続きます。集めたデータをグラフ化することに、とても価値を感じているからです。
逆に言えば、平均・標準偏差をはじめ、各種推定と検定、そして回帰分析に至るまで、統計解析によって数値化し、データ群を一言でいうとこんな感じのものとまとめることや、有意差が有るとか無いとはんていすることや、重回帰分析によって見積もり精度が向上したとかしないとか、、、そういう統計解析計算と計算結果の値は、グラフから自分が経験と勘で読み取ったことの客観的な証拠を示すだけの意味しかないと考えています。
他人を動かすには、「難しい数式を使って統計解析した結果です」という客観的な証拠が大切です。しかし、証拠を集める前の仮説を立てる段階では、グラフを描いて眺めることの方が大切です。
※ 重回帰式はグラフを見てもわからないだろうと思われるかもしれませんが、散布図行列を見ているとわかるものです。
グラフの初回は「インデックスプロット」について取り上げます。
「インデックスプロット」が、グラフメニューの一番上にあります。つまり、「1番初めに使ってほしいグラフはこれ」というRコマンダーの作者の願いがあるに違いない思うからです。
≡ インデックスプロット
まずは、実物を見ましょう。キャッチイメージを再掲します。

グラフの元データは、前回も使用した「何かの検査数」です。元データの数がが603個あるので、横軸の軸ラベルが600まであるというわけです。
縦軸は、最小の0から最大の26089が収まるように、25000の目盛りまであります。最小と最大は、前回、Rコマンダーのメニューから
[統計量]>[要約]>[アクティブデータセット]
で求めました。
アクティブデータセットの表示機能ですが、おそらくRコマンダーのバグだと思うのですが、10列以上になるとハングアップしますので、あまり使わない方が良いです。 平均とか標準偏差をざっと確認したいときには、メニューの「[統計量]>[要約]>[数値による要約]」の方をお勧めします。
データの数は、カテゴリ変数の「判明_年月日」のところで分かります。
(2020/1/24-29の6個とOtherにまとめられた597個を足した603個です)
> summary(Dataset)
判明_年月日 総検査実施件数 医療機関等実施数 健康安全センター実施数
2020/1/24: 1 Min. : 0 Min. : 0 Min. : 0.0
2020/1/25: 1 1st Qu.: 1620 1st Qu.: 1397 1st Qu.: 114.5
2020/1/26: 1 Median : 5481 Median : 5088 Median : 271.0
2020/1/27: 1 Mean : 6157 Mean : 5845 Mean : 311.9
2020/1/28: 1 3rd Qu.: 9617 3rd Qu.: 9126 3rd Qu.: 430.5
2020/1/29: 1 Max. :26089 Max. :25678 Max. :1474.0
(Other) :597 念のため、元データのCSVファイルの先頭と最終行あたりもチェックしておきます。


たしかにインデックスプロットのとおりのようです。←あたりまえ
当たり前ですが、統計に慣れるまでは、面倒なようでも1ステップずつ納得しながら確実に進めることをお勧めします。
Rコマンダーの[データセットの編集]と、[データセットを表示]ボタンでも読み込んだ表を表示することもできます。できるのですが、とても貧弱な機能しかないので、私はあまり使いません。
私は、データを作ったり、編集するところまで(※)はExcelやデータベースを用いて、R上では、データの加工はほとんどしないようにしています。(たまに、数値変数をカテゴリ変数にRコマンダーで変換する程度です)
(※)例えば、試験の得点は偏差値に変換してから統計解析をしたくなります。R上でもがんばれば可能です。R言語ですから。でも、私は偏差値に直した列を作るところまではExcelで行います。
自分でも確認したい人は次のCSVファイルをRコマンダーに読み込んで試してみましょう。前回、せっかく、RとRコマンダーをインストールしたのですから、使わないと損です。(笑)
試しながら読むと理解が深まります。
■ インデックスプロットとは
インデックスプロットとは、その名の通り、インデックスを横軸にして、データをグラフ化したものです。
つまり、単純にデータの並び順に、データを図にしたものです。
■ インデックスプロットの操作
Rコマンダーのメニューの[グラフ]>[インデックスプロット]を選択すると次のダイアログが現れますので、グラフ化したい変数を選択します。オプションタブを選ぶと詳しい設定ができます。

ここでは、「総検査実施件数」を選択しています。
ここで、リストにグラフ化したい変数(列名)が現れないことがあります。上のダイアログでも、現れていない変数があることにお気づきでしょうか? 元データを再掲しますね。

お気づきですね?
「判明_年月日」がインデックスプロットダイアログの変数リストにありません。
なぜ現れないのかといえば、前々回の第1回目にやった、「統計で扱うデータには、『数値』と『文字』の2種類がある」からです。
『数値』変数の、「総検査実施件数」と「医療機関等実施数」と「健康安全センター実施数」は、インデックスプロットダイアログの変数リストに現れて『文字』変数の、「判明_年月日」は現れていません。
数値変数(量的変数)は、インデックスプロットグラフにできるけれど、文字変数(質的変数)は、インデックスプロットグラフにできないからです。
数値のはずなのに、数値が文字(カテゴリ変数)としてRに読み取られることが、時々起こります。それは、桁取りのカンマ「,」と小数点「.」が関係することが多いです。Rを使う人は、一度は経験するのではないかというくらいあります。このくらい、Rの方でコンファーマを出すなど、何とかしてほしいものです。(#^ω^)
Rでは、「1,234」は千二百三十四という数値ではなく、文字として読み取られます。数値としたければ元データから位取りのカンマ「,」を取り除いてください。CSVファイルをエクセルで開いてカンマを消すのが簡単だと思います。正規表現が使えるテキストエディタで直しても良いです。
(エクセルで新しいシートにコピペするのが早いかな。)
小数点の方は、デフォルトでは問題ないのですが、CSVのカンマ区切りにチェックを入れるときにうっかり小数点の設定をカンマの方にチェックしてしまう人がいます。
データ読み込み時にカンマ「,」を小数点として扱う指定ができるからです。その指定をして「3.14」を読み込むと、こちらも文字とみなされてしまいます。
外国によっては小数点が、ピリオドではなくカンマの国があります。
ざっくりいうと、イギリス、米国、日本、中国、インドでは小数点に「ピリオド」を用い、フランス、ドイツ、イタリア、スペイン、ロシアでは「カンマ」を用いています。

グラフは数値変数を扱うものがほとんどですが、棒グラフと円グラフは、Rコマンダーでは、『文字』変数しかグラフ化できません。以下、サンプルを張っておきますね。(棒グラフと円グラフについての説明は、グラフの最後の回にしようと思っています)


■ インデックスプロットの使い方
インデックスプロットは、「検査数の推移」といった「(時系列における)~データの推移」を知りたいときに使います。
例えば、10年分の「月別晴れの日」調査をした結果の表があったとします。こんな表です。

表でも、“6月付近は梅雨だから晴れの日は少ないのかな”と見当がつきますが、インデックスプロットをすれば、

と一目瞭然です。キャッチイメージと見た目が違うのは、インデックスプロットグラフのオプションでプロットの種類を「スパイク」から「点」に変えているためです。

インデックスプロットグラフの縦軸がデータの最小値と最大値になっていることに注意してください。一般に、縦軸の範囲を限定すると値の変化が読み取りやすくなる一方で、誤解を与える危険があります。こちらのグラフを見て、「6月は晴れの日はゼロか」と読み間違える危険があるということです。
表で示されている通り、「6月の晴れの日の割合は23%」ですので(30*23/100=6.9ですので)、6月の晴れの日はゼロではなく、7日近くあります。
「(時系列における)~データの推移」を知りたいときに使うイメージは湧きましたでしょうか?
仕事に絡めれば、「XX商品の日別販売個数」でもいいですし、「XX商品の日別クレーム数」なども、まずは、インデックスプロットして視覚化して、時系列の変動を確認します。
≡ おわりに
今回は、インデックスプロットの話をしました。時系列データであればまずはインデックスプロットを描いてみましょう。Rコマンダーならメニューを選ぶだけなので超簡単です。このように、データさえあれば様々な見方でそれを解析できるところが統計解析ツールを使う利点です。
このグラフの良いところは、元データを一切加工していない点です。人の作為が全く入っていない素のグラフ。そこが好きです。
グラフの縦横比率を変えれば、印象は多少変わります。
お勧めしたいのは、Rコマンダーにデータを取り込んだら、まずは、インデックスプロットすることです。
そして、インデックスプロットグラフを3分は眺めて、「どうやってこいつらを料理してやろうか」と統計解析の作戦を立てると良いです。
次回は、「ヒストグラム」を取り上げます。
