読者です 読者をやめる 読者になる 読者になる

東京に棲む日々

データ分析、統計、ITを勉強中。未だ世に出ず。

R 多変量解析 - 重回帰

一変量解析で各変数の分布の確認、二変量解析で体重に身長と性別がどのように影響を及ぼしているか確認してきた。最後に、体重、身長、性別の三変数で多変量解析(重回帰)を実行する。

目的変数:体重、説明変数:身長、性別、身長と性別の交互作用。

交互作用は":"で表記。

mlr_result <- lm(BigClass$Weight ~ BigClass$Height + BigClass$Sex + BigClass$Height:BigClass$Sex)

summary(mlr_result)

  
Call:
lm(formula = BigClass$Weight ~ BigClass$Height + BigClass$Sex + 
    BigClass$Height:BigClass$Sex)

Residuals:
     Min       1Q   Median       3Q      Max 
-12.2616  -5.1313  -0.3268   4.2428  19.4547 

Coefficients:
                              Estimate Std. Error t value Pr(>|t|)    
(Intercept)                   -86.0984    29.5815  -2.911  0.00615 ** 
BigClass$Height                 0.8528     0.1910   4.466 7.59e-05 ***
BigClass$SexM                  36.5110    37.7370   0.968  0.33974    
BigClass$Height:BigClass$SexM  -0.2446     0.2392  -1.023  0.31330    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 7.223 on 36 degrees of freedom
Multiple R-squared: 0.5257,     Adjusted R-squared: 0.4862 
F-statistic:  13.3 on 3 and 36 DF,  p-value: 5.351e-06 

 性別や、身長と性別の交互作用の効果は強くないことはこれまでの分析で把握しているのだが、モデルは変数選択を行わず、このまま分析を続行する。

 

予測値(横軸)と実測値(縦軸)のプロットを描く。

予測値は、<結果のオブジェクト>$fitted.valuesで呼び出せる。

plot(mlr_result$fitted.values, BigClass$Weight, xlim=c(20,85), ylim=c(20,85))

ななめ45度線を引く。
abline(a=0, b=1)

identify()を用い、プロットの外れ値にラベルを表示させる。

identify(mlr_result$fitted.values, BigClass$Weight, BigClass$Name)

 f:id:High_School_Student:20130415190919j:plain

LAWRENCEが外れ値に見える。そこまで影響は大きくないかもしれないが、モデルを引っ張り歪めてしまっているかもしれないので、LAWRENCEを除き再分析してみる。

LAWRENCE(40行目)を除いたデータフレームを作成。

BCwoLAW <- BigClass[-40,]

mlr_result_2 <- lm(BCwoLAW$Weight ~ BCwoLAW$Height + BCwoLAW$Sex + BCwoLAW$Height:BCwoLAW$Sex)

summary(mlr_result_2)

  
Call:
lm(formula = BCwoLAW$Weight ~ BCwoLAW$Height + BCwoLAW$Sex + 
    BCwoLAW$Height:BCwoLAW$Sex)

Residuals:
     Min       1Q   Median       3Q      Max 
-12.2616  -4.8120   0.5666   4.4989  13.4575 

Coefficients:
                            Estimate Std. Error t value Pr(>|t|)    
(Intercept)                 -86.0984    26.2490  -3.280  0.00235 ** 
BCwoLAW$Height                0.8528     0.1694   5.033 1.45e-05 ***
BCwoLAW$SexM                 58.0880    34.1280   1.702  0.09761 .  
BCwoLAW$Height:BCwoLAW$SexM  -0.3839     0.2165  -1.773  0.08487 .  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 6.409 on 35 degrees of freedom
Multiple R-squared: 0.5229,     Adjusted R-squared: 0.4821 
F-statistic: 12.79 on 3 and 35 DF,  p-value: 8.465e-06 

R^2関連の値はさほど変化せず。Residual standard error(誤差の標準偏差)は多少向上。

 パラメータ推定値では、性別の主効果の項目が大きく変化。LAWRENCEを除くことによって、男女別体重の平均値が多少大きく変化するためだと思われる。

予測値(横軸)と実測値(縦軸)のプロットを描く。

plot(mlr_result_2$fitted.values, BCwoLAW$Weight, xlim=c(20,85), ylim=c(20,85))
abline(a=0, b=1)

 f:id:High_School_Student:20130415190820j:plain