回帰分析(1)〜回帰分析の仕組み

ここからは,2変量(またはそれ以上)の間での関係を分析する手法について学びます.はじめに,相関について復習したあと,回帰分析の目的,その仕組みを解説した後,単回帰分析を例に分析結果の読み方を学びます.


相関係数の算出

2つの変数の間に一定の関係が想像できるとき,これを具体的な数値で表現してみます.2つのデータの間の関係の強さを測る統計量を相関係数と呼んでいます.2変数データに関連性がある時(例えば,片方が大きいと,もう片方も大きくなるなど),その2つの変数には相関があるといいます.

■相関係数の算出法:Excelでは,「CORREL」という関数を用います.
CORREL(変数1のデータ範囲,変数2のデータ範囲)
変数1と2の順番は関係ありません.

X1Y1X2Y2X3Y3
1.9962.6721.471-1.1063.5117.62
2.7651.5021.744-1.1122.2736.813
3.6451.2262.409-2.7874.6632.125
4.1483.2672.629-0.9435.2288.641
4.9843.5253.44-4.071.2547.334
5.341.8353.506-1.686.4440.52
5.5353.3174.123-4.0137.1843.304
6.2144.5284.699-2.2821.0267.918
6.6213.1994.704-5.0349.5979.885
7.5822.8534.853-2.2344.1972.764
7.6076.2925.586-4.4236.2636.146
8.4747.3195.951-5.4242.685.189
9.3834.3816.642-8.3988.9729.139
9.5796.7077.234-7.6287.0623.816
9.8126.9537.569-10.3380.9743.655
9.9157.0688.508-2.9868.3526.36

上記の3つの組み合わせ(X1とY1,X2とY2,X3とY3)で相関係数を求めると,それぞれ,

となります.この様子をグラフに描くと,


X1とY1(0.822)

X2とY2(-0.720)

X3とY3(0.101)

となります.相関係数の数値とグラフの関係を感じ取ってください.

■相関係数の見方1:
相関係数は-1から+1の間の数値をとり,-1,+1の時は完全相関(順に逆相関,正相関)といい,2つの変数間に強い関連性が存在することと示します.正の相関では2つの変数は同じ方向に変化する傾向があるといえます.その強さは+1に近づくほど強くなります.また,負の相関では2つの変数は逆の方向に変化する傾向があるといえます.その強さは-1に近づくほど強くなります.一方,ゼロの時は無相関といい,2つの変数間に関連性がないと判断されます.


相関+1の場合の散布図.直線上に並びます

■相関係数の見方2:
一つの目安として,相関係数の大きさ(絶対値)と相関の程度の表現の対応関係は以下のように考えれば良いといわれています.

1.0≧|R|≧0.7:高い相関がある
0.7≧|R|≧0.5:かなり高い相関がある
0.5≧|R|≧0.4:中程度の相関がある
0.4≧|R|≧0.3:ある程度の相関がある
0.3≧|R|≧0.2:弱い相関がある
0.2≧|R|≧0.0:ほとんど相関がない
出典:「社会調査の基礎」放送大学テキスト


回帰分析の目的

例えば身長と体重のような,相互依存の関係にある2変量があるとき,一方の数値が与えられたとき,他方の組を予測することができます.

回帰分析とは,乱暴にいってしまえば,複数の変数間の関係を一次方程式(Y=aX+b)の形で表現する分析方法です.

回帰分析の結果用途としては例えば,

  1. 因果関係が想像される2つの変数間の関係を調べる(因果関係の証明)
  2. 売上高と宣伝費の関係が分かっていれば→目標とする売上高に対して宣伝費を決定する(制御)
  3. 人口と商店数の関係が分かっていれば→ある市の人口からその市の商店数を予測する(予測)

なんて用途が考えられます.

予測したい変数のことを目的変数(または被説明変数)といい,目的変数を説明する変数のことを説明変数(または独立変数)と呼びます.目的変数は1つですが,説明変数の数はいくつでもよく,説明変数が2つ以上の時は重回帰,1つのとき特に単回帰と呼びます.また,求められた一次方程式を回帰式と呼ぶこともあります.
※テキストでは目的変数と独立変数,被説明変数と説明変数の組で示されます.


回帰式を求めるイメージ

例えば,2つの変数間の関係を回帰式で表現することを考えよう.推定するのは

・直線の切片であるb

   と

・傾きaである.

回帰式はデータに最も良くあてはまる直線である.しかし,実際には各データに対して必ず誤差が存在している.回帰式の推定に用いられる最小二乗法は,求める直線とデータとのy軸でみた誤差(残差)dの二乗和(つまり誤差の面積)が最小になるように直線を求める方法である.以下の図はイメージです.

reg.gif

図で青の直線が回帰式,赤点が実際のデータの値です.回帰式からの距離(誤差)dの二乗(緑の正方形)の合計が最小になるように回帰式を描いてみよう,というのが最小二乗法のアイデアです.最小二乗法の具体的内容については統計学のテキストを参照して下さい.
このことから,回帰分析していることを,最小二乗法(または最小自乗法)で求めた,とか,OLS(Ordinary Least Squares)で求めた,と表現する場合があります.


Excelによる回帰分析の実行(単回帰)

例えば,このようなデータを分析してみましょう.これは男女100人の身長,体重のデータ(仮想)です.以下の様にExcelの表の上にデータが並んでいたとします.C列が身長,D列が体重,E列が父親の身長のデータとします.
※データはこの後にもならんでいます.

uni-0.gif

ここでは,身長が,自身の体重とどのような関係にあるかを回帰分析してみます.ホントは因果関係として,身長→体重と考えた方が良いのですが,ここでは体重→身長と考えてみます.つまり,

身長=切片+傾き×体重

という回帰式を推定します.

【手順】

  1. 「データ」タブの「データ分析」
  2. 「回帰分析」

すると,次のダイアログが現れます.データ範囲,出力範囲を設定し,「OK」ボタンをクリックします.

reg-s-1.gif
  1. 図中の「入力Y範囲」には,従属変数(被説明変数),「入力X範囲」には独立変数(説明変数)を示す範囲を入力します.
    例ではY範囲には身長,X範囲には体重を指定しています.
  2. ラベルには変数の名称をデータ範囲に含めて指定した際にチェックします.データ範囲にラベルを含めていないのにチェックすると,分析結果が違ってきますので注意.
  3. 残差や正規確率などのオプションを選択し,出力先を指定したら,「OK」ボタンをクリックして,分析を行ないます.

※注意1:上記の図中に「定数に0を使用」という項目がありますが,これを指定して回帰した場合,相関係数や決定係数が正しく計算されません(MS側のバグらしいです.群馬大学の青木先生のホームページで知りました).もっとも回帰係数は合っているようです.


回帰分析の結果の読み方

実行すると,Excelは以下の分析結果を出力します.ざっくり,最低限理解しておくべき内容は4つです.

  1. 「係数」から回帰式が読み取れるか
  2. 説明変数Xの係数(つまり傾き)の符号が事前の予想と整合的か
  3. p値などから,係数(傾き)が有意にゼロでないことが示されるか
  4. 決定係数から,説明変数(X)が非説明変数(Y)の動きをどれくらい説明できているかを評価できるか

reg-s-2.gif

  1. 「係数」のところには切片と傾きの値が示されています.推定された回帰式は,

    身長=113.34+0.98×体重

    となります.傾きにある数値は変数(ここでは体重)が1単位増加した時の身長の増加分を表しています.ここでは,女性の身長は体重が1Kg増加する毎に0.98cm伸びていることが分かります.

  2. 説明変数Xの傾きの符号にも注目しましょう.回帰分析を行う際,実験者(皆さん)はある程度,説明変数Xと被説明変数Yの因果関係について何らかの想定を行っている場合が多いはずです.そこで,その際に想定した係数の符号と分析結果から得られた符号の向きが整合的であるか判断しましょう.
    違っていた場合,データや分析が誤っていたか,事前の想定が間違っていたかを再検討しましょう.
  3. 係数の欄のt値,p値は推定された「係数が0である」という帰無仮説を検定したものです.検定結果から帰無仮説が棄却できない,すなわち統計的に0でないとはいえない(0かもしれない)となると,YとXの関係がないことになるので,この回帰分析に意味がなくなります.
    棄却できた場合,この説明変数Xは被説明変数Yの要因として認められる,という結論を得ることができます.
    判断の仕方は以下の通り.

    (1)P(T<=t)<実験者が設定する棄却域の確率帰無仮説を棄却
    (2)t 境界値<「t」の絶対値 帰無仮説を棄却

    t境界値はtinv関数を用いて得ることができます.

    項目関数名
    t境界値を得るtinv(確率,自由度)

    確率には多くの場合,5%(0.05),1%(0.01)といった確率を用います.
    自由度には,「n-k-1」の数が入ります.ここで,nはサンプル数,kは回帰式に用いた独立変数の数です.
    このtinv関数が返す数値は両側検定のものです.片側検定の値を求める場合は,引数に用いる確率を2倍します.5%片側の数字の場合は,0.1となります.

  4. モデルの当てはまりの具合をしめす決定係数やそれぞれの変数について推定されたパラメータを見ることができます.「重決定R2」はテキストでは「決定係数」,あるいは「R2(あーるじじょう,アールスクエア)」と呼ばれている数値であり,当てはまりの良さを示しています.

    決定係数は0から1の間の数値となり,1に近いほど当てはまりが良いことを示しています.当てはまりの良い,悪いというのは以下の図でイメージできるのではないでしょうか.

    reg-R2.jpg

    同じ回帰式が得られたとしても,左図のように回帰線から離れた所に各データが分布していると,効果的な予測や制御にはならないことが想像できます.さて,例の数値ですが,0.65ほどとなっていて,まずまずの当てはまりです.

  5. 最後に,分散分析の結果はモデル全体が意味のあるものであるかを検定した結果です.帰無仮説は「すべての係数=0」となっています.有意Fという出力結果がこの検定のp値になります.


Excelの関数で算出する回帰分析

上記のように「分析ツール」を使っても良いのですが,算出した統計量をさらに次の分析に移したいときや,マクロを書くときなどには「分析ツール」よりも関数を用いたほうが便利です.関数では単回帰と重回帰で用いる関数が異なります.単回帰では係数,決定係数などはそれぞれ専用の1つの関数で求めます.重回帰では1つの関数で可能ですが,少々操作が難しいと思います.

単回帰の項目関数
X値の係数slope(Y範囲,X範囲)
切片intercept(Y範囲,X範囲)
決定係数rsq(Y範囲,X範囲)
重回帰関数
係数,切片などlinest(Y範囲,X範囲,定数オプション,補正オプション)

単回帰はその方法は他の関数と操作が同じなので説明は省略します.


Copyright(C) 1997-2014 by ABE Keiji
All rights reserved.