重回帰分析
- 本章で用いる実習用ファイル
ある集団から無作為に選んだ326人に学力テストを行い、その点数を記録し、さらに受験者のさまざまな属性と合わせて結果を分析する。今回は得点と身長・年齢の関係について考えを進める。
A | B | C | D | |||
---|---|---|---|---|---|---|
1 | no | marks | height | age | ||
2 | 1 | 50 | 122.06 | 8.6 | ||
3 | 2 | 76 | 153.21 | 12.0 | ||
4 | 3 | 43 | 117.53 | 7.2 | ||
5 | 4 | 51 | 127.56 | 8.4 | ||
6 | 5 | 30 | 109.83 | 6.0 | ||
… | ||||||
被験者諸属性と試験結果(架空データ) |
説明変数を複数にする。
回帰分析
回帰分析における近似直線を回帰直線と呼ぶ。回帰直線は傾きと切片によりあたえられる。独立変数が複数取れるので直線の式は一般に
y = a + b1x1 + b2x2 + … + bnxn
であたえられる。今回は説明変数は身長・年齢なので
y = a + b1x2 + b2x2
説明変数が複数になると行列計算が必要になり、かなり複雑な計算となる。そこでLINST関数を用いる。
F | G | H | I | J | |||
---|---|---|---|---|---|---|---|
age(D列) | height(C列) | ||||||
20 | 1 | 傾き | =LINEST(marks,C2:D327,TRUE,TRUE) | 0.00 | -5.55 | 切片 | |
21 | 2 | 傾きの標準誤差 | 0.22 | 0.03 | 2.61 | 切片の標準誤差 | |
22 | 3 | 決定係数 | 0.95 | 3.01 | #N/A | 推定値の標準誤差 | |
23 | 4 | F値 | 3390.31 | 323.00 | #N/A | 残差自由度 | |
24 | 5 | 回帰変動 | 61556.35 | 2932.28 | #N/A | 残差変動 | |
1 | 2 | 3 |
- 身長の係数が正の値なので身長が高ければ得点も上がる(身長1cmに付き得点は0.0035点上がる)。
- 年齢の係数が正の値なので年齢が高ければ得点も上がる(年齢1歳に付き得点は6.64点上がる)。
※身長1cmと年齢1歳の得点にあたえる影響について単純な大小比較は出来ない。
LINEST関数の出力
LINEST関数は結果を配列で出力する。配列はINDEX関数で任意の値を取り出せる。
- INDEX(配列, 行番号, 列番号)
-
配列から行番号・列番号の値を返す
例:INDEX(LINEST(marks,C2:D327,TRUE,TRUE),4,2)→323.00
分散分析
F | G | H | I | J | K | |||
---|---|---|---|---|---|---|---|---|
8 | 因子 | 変動 | 自由度 | 分散 | F | p値 | ||
9 | 回帰 | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),5,1) | 2 | =G9/H9 | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),4,1) | 0.00% | ||
10 | 残差 | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),5,2) | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),4,2) | =G10/H10 | ||||
11 | 全体 | =G9+G10 | =H9+H10 | =G11/H11 | ||||
この分散分析の帰無仮説は「説明変数の変動によっては目的変数の値は変動しない」。因子分散(説明変数が因子となる分散)が残差分散に比べて十分に大きければ帰無仮説は棄却される。すなわち説明変数の変化によって目的変数も(一定)変化する、という結論が得られる。
回帰係数の有意性検定
F | G | H | I | J | K | |||
---|---|---|---|---|---|---|---|---|
14 | 変数 | 係数 | 標準誤差 | 標準化回帰係数 | t | p値 | ||
15 | 切片a | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),1,3) | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),2,3) | =G15/H15 | 3.43% | |||
16 | 身長b | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),1,2) | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),2,2) | =G16/H16 | 91.55% | |||
17 | 年齢b | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),1,1) | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),2,1) | =G17/H17 | 0.00% | |||
各説明変数(身長,年齢)の傾きとその有意性が重要である。
- 身長の回帰係数のp値…0.9154989←有意ではない
- 年齢の回帰係数のp値…0.0000000←1%水準で有意である
年齢のみが有意となっている。「年齢が1歳上がれば点数が6.64点上がる」傾向が読み取れる。
標準化回帰係数
F | G | H | I | J | K | |||
---|---|---|---|---|---|---|---|---|
14 | 変数 | 係数 | 標準誤差 | 標準化回帰係数 | t | p値 | ||
15 | 切片a | -5.55 | 2.61 | -2.13 | 3.43% | |||
16 | 身長b | 0.00 | 0.03 | =G16*STDEV.S(height)/STDEV.S(marks) | 0.11 | 91.55% | ||
17 | 年齢b | 6.64 | 0.22 | =G17*STDEV.S(age)/STDEV.S(marks) | 30.86 | 0.00% | ||
傾きbの分母(説明変数の変動)・分子(目的変数の変動)を各々標準化した(x,yのばらつきの規模を揃えた)ものが標準化回帰係数。
傾き(回帰係数)は変数ごとの大小比較は出来ないが、標準化回帰係数は大小比較可である。
- 身長の標準化回帰係数…0.0034
- 年齢の標準化回帰係数…0.97
得点にあたえる影響は「年齢」 > 「身長」
モデルの概要
回帰式がデータにどの程度適合しているかを示す。
F | G | |||
---|---|---|---|---|
2 | 相関係数r | =SQRT(G3) | ||
3 | 決定係数R2 | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),3,1) | ||
4 | 補正R2 | =1 - I10/I11 | ||
5 | 推定値の標準誤差 | =INDEX(LINEST(marks,C2:D327,TRUE,TRUE),3,2) | ||
- 重相関係数r…目的変数と目的変数の期待値との相関係数
- 決定係数R2…回帰モデルの当てはまりの良さを示す(説明変数が多いと当てはまりは良くなる一方でモデルが複雑になる)
- 補正R2…説明変数の数で調整をして、モデルの複雑さと当てはまりの良さのバランスを取る