静粛に、只今統計勉強中

仕事でデータ分析をすることになったバリバリ文系アラフィフのおっさんが、独学で統計の勉強を始めました。

Excel VBAで散布図に信頼区間と予測区間を表示するマクロを作ってみた2

前回、回帰係数の検定から信頼区間&予測区間の計算まで全てVBAで自動化した上で、信頼区間&予測区間付きの散布図も作っちゃえ! を実現しましたので、今回はその使い方と実行結果の解説です。

 

使い方と結果

使い方は、毎度おなじみ、ソースコード全行をVBEで標準モジュールにコピペしたら、データ範囲を選択して、[開発]→[マクロ]→[Scatter_Plot]を選択→【実行】をクリックするだけ、です。
f:id:cyclo-commuter:20180201154516j:plain

使用上の注意が3つあります。

  1. 必ず表にラベル行を作っておいてください。
  2. 必ず独立変数(説明変数)をに、従属変数(目的変数)をに配置してください。
  3. 従属変数から右の列は空白にしておいください。(値があると上書きされます。)

クリック後1~2秒で以下のように結果が出力されます。 

f:id:cyclo-commuter:20180201161615j:plain
画面左側のD~H列には信頼区間・予測区間と標準化残差が、右側には F 検定の P 値と散布図が追加されています。

グラフを拡大したのがこちら。

f:id:cyclo-commuter:20180201163134j:plain
真ん中の赤い線が回帰直線、外側の黄色いのが予測区間、その間のオレンジが信頼区間です。観測値が全て予測区間の中に収まってプロットされていますね。

もうひとつ、『統計学がわかる【回帰分析・因子分析編】』のデータでも試してみます。
f:id:cyclo-commuter:20180201165554j:plain
おっ、標準化残差のフォントカラーが赤くなってる!
実は、元のデータでは客数が196だったのを186に変えてから実行したのです。

f:id:cyclo-commuter:20180202092522j:plain

『マンガでわかる統計学 回帰分析編』によると、

(引用者註:標準化残差の)絶対値が3を超えている個体が存在した場合は、それを除外したうえで改めて回帰分析することをお勧めします。(95ページ)

との由。標準化残差は外れ値を見つけるための目安になるのですね。
グラフで見てみると、

f:id:cyclo-commuter:20180202093828j:plain

一点だけ予測区間の外に大きくはみ出していて、いかにも外れ値です。
では、この観測を除外して再度実行してみましょう。

f:id:cyclo-commuter:20180202094311j:plain

おお! 寄与率が0.64まで上がりました! 信頼区間と予測区間のレンジも狭まっていますね!

 

ところでこのデータ、実は2次多項式回帰にしたほうが当てはまりがいいんですよねえ・・・

f:id:cyclo-commuter:20180202100706j:plain