QQプロットのエクセルでのやり方:正規性の確認ができる【正規性検定①】
この記事では、なぜ平均や標準偏差を使う検定ではデータに正規性が無ければいけないのかを説明し、自分の観測データが、正規分布に従っているかを確認できるQQプロットのやり方を、エクセル上で実演してるので自分でQQプロットができる様になります。
(動画時間:9:48)
なぜ平均や標準偏差を使う検定ではデータに正規性が無ければいけないのか?
こんにちは、リーンシグマ、ブラックベルトのマイク根上です。
業務改善コンサルをしています。今日はこの動画リクエストからです。
「XBarR管理図のデータの分布が正規分布していません。
正規分布していないデータでも、
何も補正せずにXBarR管理図を使用しても良いものなのでしょうか?」
鈴木さん、ご質問ありがとうございました。
このご質問は非常に示唆に富んだものでして、
僕は「データが正規分布していない」と
「何も補正せずに管理図を使用しても良いのか」
と言う二点に着目しました。
それらについて、今日の動画を含めて3つの動画でご説明します。
QQプロットのやり方を直ぐにお知りになりたい方は後の章に飛んで下さい。
まずは正規性を利用した検定のルールをお話しします。
質問者さんの状況を言いますと、
工程データのXBarR管理図を使って異常値を観察する事によって
不良品を出す前に工程改善をされようとしています。
質問者さんからサンプルデータも頂いたので、実際に管理図を作ってみました。
上図が僕の管理図のエクセルテンプレートで作った
頂いたサンプルデータの管理図です。
これだけを見ると平均値より下で連続7以上の打点があったり、
上下限界線を越えている打点があるので、
異常が発生している可能性が高いです。
これは問題だ、対処しようとなりますが、
実はこの観測データでは管理図は使えない状態である可能性もあるのです。
管理図はデータの平均値と標準偏差を使った技法で、
これは観測データが正規分布に従っている事が条件なのです。
正規分布とは、簡単に言うと、
そのデータでヒストグラム、つまり度数分布図を作った時、
左右対称の釣鐘状になる分布です。
ちなみに正規分布に従っている事を正規性があると言います。
それでは今度はさっきのデータのヒストグラムを作ってみましょう。
ヒストグラムはエクセルで簡単に作れます。
対象のデータの範囲を選択して、メニューバーの「挿入」、
「おすすめのグラフ」、「すべてのグラフ」のタブにして、
「ヒストグラム」を選んで、「OK」をクリックします。
上図がヒストグラムの結果ですが、
分布が左右対称にはなっていないですね。
これをもって今回のデータは正規性は無いと
判断して良いのでしょうか?
なんとなくの見た目で判断するのは非科学的だし、
どの程度正規性が無いのかも分かりません。
更にヒストグラムは横軸の度数区分をどうするかによって形が変わるのです。
正規分布図を変換した累積正規分布図にする事で観測データと比較できる。
そこで今回のメインテーマのQQプロットを使うと
もう少し正確に正規性を判断する事ができます。
まずはその考え方をお話ししましょう。
下図のB列のデータが今回の観測データで、データ数は31個で、
その平均が3.1347、標準偏差が0.0014です。
実際にはとてもばらつきが少ない観測データだったのです。
その平均値と標準偏差から上図のグラフの正規分布図が作れます。
その正規分布図とさっきの観測データのヒストグラムが同じ様な形をしていれば
観測データは正規分布に従っていると言えるのです。
しかし、観測データの度数分布をこの様にきれいな曲線で描く事ができません。
他のアプローチが必要です。
実は正規分布図の別の描き方があります。
この正規分布の縦軸の元データはこのO列からきていて、
その数値を求めるのにエクセルの「NORM.DIST」関数を使っています。
この関数内に(上図内のO3セル参照)
さっきの観測データの平均値と標準偏差を入れて、
最後の引数に「関数形式」を指定するのに「FALSE」を入れていて、
これで「確率質量関数」を指定して、確率密度を出しています。
セルO3内
=NORM.DIST(N3,$E$4,$E$6,FALSE)
NORM.DIST(横軸の値,平均,標準偏差,関数形式)
TRUE: 累積分布関数
FALSE: 確率質量関数
それを「TRUE」に変えて、「累積分布関数」にして、
全ての数式をそれに変えると、
下図の様に右肩上がりのグラフになります。
これが「正規累積分布図」なのです。
考え方としてはさっきの確率密度を累積した数値にしたのです。
最初の正規分布図の面積が1になるので、
この累積分布図の一番右のY軸は1になります。
なぜこっちを使うかと言うと、
観測データでもこの形なら表現ができるからです。
この特性を使うのがQQプロットなのです。
QQプロットの前計算をし、QQプロットの仕組みを検証する。
QQプロットをやる手順は次の様です。
- データ数、平均、標準偏差を求める。
- 観測データに連番を振り、観測データを小さい順で並べる。
- データ数から各順位の確率を求める。
- 累積分布の期待値を求める。
- 観測データと累積分布の期待値で散布図を作る。
これを読んでも良く分かりませんね。
エクセル上で一つずつやってみましょう。
まず、エクセル関数で、データ数、平均、標準偏差を求めます。
標準偏差のエクセル関数は沢山ありますが、
今回はサンプルの標準偏差を求めるので、STDEV.S関数を使います。
次に連番を振り、これは後の関数で使います。
そしてデータを小さい順に並べますが、
エクセル機能の並べ替えを使ってもいいですが、
ここではSMALL関数を使い、ここでさっきの連番を使います。
セルE4内
=SMALL($B$4:$B$34,E4)
SMALL(データの範囲,順位)
次に「(連番ー0.5)÷データ数」で「順位の確率」を求めます。
これがX軸になり、分布図的に言うと確率変数になるのです。(下図内、G列)
ここでなぜ0.5で引くかは経験上これがちょうどいいからです。
セルG4内
=(E4-0.5)/$C$5
(連番-0.5)/データ数
ここで散布図を追加して、X軸にさっきの順位の確率を、
Y軸に観測データを選ぶと、
観測データでの累積分布図ができたのです。(上図参照)
次に、各「順位の確率」の「累積分布の期待値」、
つまり、正規性のある累積分布図を出します。
それを「NORM.INV」関数で出せます。
第一引数に「順位の確率」を、第二、第三引数に、
平均値と、標準偏差を入れて、下までオートフィルします。
セルH4内
=NORM.INV(G4,$C$8,$C$11)
NORM.INV(X軸の値,平均値,標準偏差)
これでデータの準備は完了です。
さっきの散布図をコピペして、Y軸のデータを観測データ(F列)から、
期待値(H列)に入れ替えます。
これで「正規累積分布」を作ったのです。(上図参照)
この二つのグラフが同じ様なら観測データは
正規性があると言えるのですが、
二つのグラフを横に並べて比べてもハッキリとは言い難いですね。
QQプロットを作成し、正規検定をしてみる。
今回はQQプロットの概念を説明するために
上記の二つのグラフを作りましたが、実務では作る必要はないです。
ここまでのデータの準備ができたら、
散布図を追加して、データに観測値(F列)と期待値(H列)を入れて、
この図をQQプロットと言います。(下図参照)
このプロットが直線であればあるほど正規性が高いと言えるのです。
もう少し見易いようにグラフを選択して、
メニューから、「グラフ要素を追加」、
「近似曲線」から、「線形」近似を選択し、
この近似線があった方が分かり易いです。
ちなみに期待値(H列)をコピーし、観測値(F列)の列に値でペーストすると、
傾きが1の直線のグラフになります。
これが理想ですがそうはなっていません。
アンドゥ(Ctrl + Z)をして戻します。
今回はそれより程遠いので正規性はなさそうです。
QQプロットだと直線であるかないかを見るので断然判断がし易いです。
しかし、数値的にどれだけ正規性があるかまでは分かりません。
その為には他の検定方法があります。
その中でもエクセルでできて、
実務で使える「アンダーソン・ダーリング検定」を
次回の動画でやってみます。ぜひご期待下さい。
「こちらの記事も読まれてます。」