理論生態学研究室 古屋 匠 線形回帰モデル yi axi b εi y:従属変数(目的変数) x:独立変数(説明変数) a:傾き(回帰直線) b:切片 ε:残差 因果関係が想像される2つの変数間の関係を 調べる。 相互依存の関係にある2変数があるとき、一 方の数値が与えられたとき、他方の組を予測 することができる。 回帰直線を書く上で重要なのは 予測値の残差を最小にしたい。 最小2乗法 残差平方和(残差の2乗の和) 実測値 yi n L ( yˆ i yi ) 2 残差 i 1 が最小になるように傾きと切片 を選ぶ。 2乗するのはマ イナスをなくす ため 予測値 ŷi 求める回帰直線をy=ax+bとする。 n n L ( yi yˆ i ) ( yi axi b) 2 2 i 1 i 1 この値が最小となるa,bを求める。そこでa,bについて微分する。 n L 2 ( yi ax b) 0・・① b i 1 n L 2 xi ( yi ax b) 0・・② a i 1 例、3点A(2,2)、B(4,5)、C(8,6)が与えら れたとき回帰直線を求める。 標本平均x 2 4 8 14 2 5 6 13 ,y 3 3 3 3 14 13 14 13 14 13 )( 2 ) ( 4 )(5 ) (8 )( 6 ) 3 3 3 3 3 3 0.607 a 14 14 14 ( 2 ) 2 ( 4 ) 2 (8 ) 2 3 3 3 14 13 b 0.607 1.5 3 3 (2 a<-c(2,4,8) b<-c(2,5,6) lm(b~a) Call: lm(formula = b ~ a) Coefficients: (Intercept) a 1.5000 0.6071 切片 傾き 気温(℃) -18 -15 -10 -5 0 5 10 19 酸素消費速度(ml/g/hr) 5.2 4.7 4.5 3.6 3.4 3.1 2.7 1.8 上記のデータは異なる気温条件下での鳥の酸素消費速度である。 temp <- c(-18, -15, -10, -5, 0, 5, 10, 19) cons <- c(5.2, 4.7, 4.5, 3.6, 3.4, 3.1, 2.7, 1.8) 散布図を描く plot(temp, cons,xlab="気温(℃)", ylab="酸素消費速度(ml/g/hr)",main="散布図") 回帰直線を求める lm(cons ~ temp) Call: lm(formula = cons ~ temp) Coefficients: (Intercept) temp 3.47142 -0.08776 切片 傾き つまり回帰直線は y= 3.47142+(-0.08776)x となる。 傾きの検定をする。理由としてそもそも傾きa=0の場合、 説明変数であるxが変化しても目的変数であるyは変化しない。 帰無仮説:傾きa=0 対立仮説:切片a≠0 検定統計量は t=b/(bの標準残差) であり、これが自由度N-2の分布に従うとき summary関数を使う。 summary(lm(cons ~ temp)) Call: lm(formula = cons ~ temp) Residuals: Min 1Q Median 3Q Max -0.31022 -0.07552 0.03168 0.11685 0.15099 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 3.471422 0.060123 57.74 1.81e-09 *** temp -0.087759 0.004993 -17.58 2.18e-06 *** --Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.1682 on 6 degrees of freedom Multiple R-squared: 0.9809, Adjusted R-squared: 0.9778 F-statistic: 308.9 on 1 and 6 DF, p-value: 2.177e-06 帰無仮説(傾きa=0)を棄却する。 回帰係数は単回帰分析と重回帰分析との2 つがあるが今回は単回帰分析を行った。 独立変数(説明変数)が複数個ある回帰分析 を重回帰分析という。 Rで重回帰分析を行う場合には、独立変数と 独立変数の間に「+」を書いて変数を並べる。
© Copyright 2024 ExpyDoc