Rで重回帰分析
今日は、見た目にわかりにくいけど...
下記のようなデータで重回帰分析を行います。
なお、a=駅からのバス時間、b=駅、バス停徒歩時間、c=築後年数、d=建物延べ面積, e=土地面積, f=価格を表しています。これらa〜eの要因によって、価格がどのくらいになるのが適正であるかを分析します。
> data a b c d e f 1 0 16 10.0 75.00 221.87 4730 2 0 10 0.1 79.24 105.30 3850 3 10 3 1.0 94.63 174.21 4600 4 10 6 18.0 112.82 205.01 4730 5 0 5 1.0 72.46 94.90 4180 6 8 2 23.0 80.55 208.43 4350 7 0 20 10.0 99.31 171.95 3940 8 0 17 21.0 96.04 199.21 3670 9 10 4 10.0 80.14 130.27 3610 10 0 21 10.0 97.97 172.21 4050 11 10 5 31.0 84.66 168.30 3610 12 10 4 20.0 74.24 130.00 3800 13 0 22 14.0 88.60 146.64 3280 14 10 2 10.0 80.25 130.46 3850 15 0 20 9.0 100.85 165.12 3960
一旦、すべての変数に対して回帰分析を行います
> res <- lm(data$f ~ data$a+data$b+data$c+data$d+data$e) > res Call: lm(formula = data$f ~ data$a + data$b + data$c + data$d + data$e) Coefficients: (Intercept) data$a data$b data$c data$d data$e 2893.577 -34.816 -50.522 -30.923 5.244 10.734 > summary(res) (抜粋) Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 2893.577 481.946 6.004 0.000202 *** data$a -34.816 29.735 -1.171 0.271714 data$b -50.522 19.544 -2.585 0.029450 * data$c -30.923 9.429 -3.280 0.009535 ** data$d 5.244 7.332 0.715 0.492622 data$e 10.734 2.129 5.043 0.000697 ***
回帰式が求められますが、Coefficientsの中で、アスタリスクがついているものとついていないものがあります。このアスタリスクは、|t|値が小さい大きい物についておらず、この要素は回帰式において影響を与えない項目と捉えることができます。
$b, $c, $eのみを残してみることにします
> res2 <- lm(data$f ~ data$b+data$c+data$e) > res2 Coefficients: (Intercept) data$b data$c data$e 3007.75 -29.70 -36.32 10.97
これが回帰式になります。
つまり、30007.25+ 徒歩時間*-29.70 + 築後年数*-36.32 + 土地面積*10.97 = 価格
となりました。
summaryも見てみますと
> summary(res2) Call: lm(formula = data$f ~ data$b + data$c + data$e) Residuals: Min 1Q Median 3Q Max -344.75 -170.31 3.31 133.54 316.10 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 3007.753 265.058 11.348 2.06e-07 *** data$b -29.704 8.160 -3.640 0.003885 ** data$c -36.316 8.017 -4.530 0.000858 *** data$e 10.969 1.887 5.813 0.000117 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 225.7 on 11 degrees of freedom Multiple R-squared: 0.7846, Adjusted R-squared: 0.7259 F-statistic: 13.36 on 3 and 11 DF, p-value: 0.0005488
アスタリスクが0のデータが無くなり、最適な回帰式が算出できたと言えます。