2.4 표준화된 중회귀분석
표준화된
중회귀모형
Yi*
= α1Zi1 + α2Zi2 + …+ αkZik + εi’
가 되며, 표준화된 중회귀모형에서 추정된 회귀계수 αi의 절대값이 크면 클수록 설명변수 Xi가
반응변수 Yi에 주는 영향이 크게 됨.
> library(lm.beta)
> market2.lm<-lm(Y~X1+X2,data=market2)
>
market2.beta<-lm.beta(market2.lm)
> market2.beta
Call:
lm(formula = Y ~ X1 + X2, data =
market2)
Standardized Coefficients::
(Intercept) X1 X2
0.0000000 0.7015566 0.3376137
> summary(market2.beta)
Call:
lm(formula = Y ~ X1 + X2, data =
market2)
Residuals:
Min 1Q Median
3Q Max
-1.30465 -0.69561 -0.01755 0.69003
1.53127
Coefficients:
Estimate Standardized Std. Error t
value Pr(>|t|)
(Intercept) 0.85041
0.00000 0.84624 1.005 0.334770
X1 1.55811 0.70156 0.14793 10.532 2.04e-07 ***
X2 0.42736 0.33761 0.08431 5.069 0.000276 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’
1
Residual standard error: 0.9318 on 12
degrees of freedom
Multiple R-squared: 0.9799,
Adjusted R-squared: 0.9765
F-statistic: 292.5 on 2 and 12
DF, p-value: 6.597e-11
-> R 결과에서 변수 X1, X2에 대한 표준화
계수는 0.7016, 0.3376이 됨을 알 수 있다. 따라서
적합된 표준화된계수 모형은
Ŷ* = 0.7016Z1
+ 0.3376Z2
가 된다.여기서 X1의 계수가 X2의 계수보다 크므로 상대적으로 X1의 영향이 더 큼을 알 수 있다.
2.5 추정과 검정
Market2 데이터에 대하여
(1) X1=10,
X2=10에 E(Y)=95% , 99%를 신뢰구간으로
추정하고
(2) H0
: β1 = 0, H0 : β2 = 0에 대하여 유의수준 α =0.05로 가설검정을 해 보자
#95%의 신뢰구간
>
pred.x<-data.frame(X1=10,X2=10)
> pred.x
X1 X2
1 10 10
>
pc=predict(market2.lm,int='c',newdata=pred.x)
> pc
fit lwr upr
1 20.70503 19.95796 21.45209
> round(pc,3)
fit lwr upr
1 20.705 19.958 21.452
->
X1=10, X2=10 에서의 추정값은 20.705이고 95%의 신뢰구간은
(19.958,21.452)가 된다.
#99%의 신뢰구간
>
pc99<-predict(market2.lm,int='c',level=0.99,newdata=pred.x)
> pc99
fit lwr upr
1 20.70503 19.65769 21.75236
> round(pc99,3)
fit lwr upr
1 20.705 19.658 21.752
->
X1=10, X2=10 에서의 추정값은 20.705이고 99%의 신뢰구간은
(19.658,21.752)로 95%의 신뢰구간은
(19.958,21.452)보다 더 넓게 형성된다.
H0
: β1 = 0, H0 : β2 = 0에 대한 가설 검정은 회귀적합 결과를 이용하면 된다.
> summary(market2.lm)
Call:
lm(formula = Y ~ X1 + X2, data =
market2)
Residuals:
Min 1Q Median
3Q Max
-1.30465 -0.69561 -0.01755 0.69003
1.53127
Coefficients:
Estimate Std. Error t value
Pr(>|t|)
(Intercept) 0.85041
0.84624 1.005 0.334770
X1 1.55811
0.14793 10.532 2.04e-07 ***
X2 0.42736 0.08431
5.069 0.000276 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’
1
Residual standard error: 0.9318 on 12
degrees of freedom
Multiple R-squared: 0.9799,
Adjusted R-squared: 0.9765
F-statistic: 292.5 on 2 and 12
DF, p-value: 6.597e-11
Beta hat 1
값은 1.55811 이고, 표준오차는 0.14793이므로
t-값은 1.55811 / 0.14793 = 10.53275
유의확률 p-값 2.04 X 107 이 되므로 귀무가설 H0
: β1 = 0은 기각한다. R에서
***는 p-값이 0.001보다 작은 경우로
표시되었음을 알 수 있다. H0 : β2 = 0 의 가설 역시 p-값이 0.000276이므로 귀각한다.
2.6 변수 추가
중회귀모형을 적합할 때 어떤 특정한 변수를 회귀모형에 포함시키는 것이 바람직한가를
결정하고 싶은 경우가 있다. 이러한 경우 이 변수를 포함시키지 않고 구한 회귀제곱함(SSR)에서 이 변수를 포함시키고 구한 회귀제곱함(SSR)이 추가적으로
어느 정도 커졌는가를 검토하는것이 좋을 것이다. 이와 같은 경우에 추가적으로 증가된 제곱함을 추가제곱합(extra sum of squares)라고 부른다.
Health
data 불러오기
X1: 몸무게(파운드),
X2: 분당 맥박수,
X3: 근력(들어올릴 수 있는 무게: 파운드),
X4: 1/4 마일 달리는 시간(초),
Y: 1마일 달리는 시간(초)
>
health<-read.table('health.csv',header=T)
> head(health,2)
번호.X1.X2.X3.X4.Y
1 1,217,67,260,91,481
2 2,141,52,190,66,292
>
health<-read.table('health.csv',header=T,sep=',')
> head(health,2)
번호
X1 X2 X3 X4 Y
1
1 217 67 260 91 481
2
2 141 52 190 66 292
> colnames(health[1])
[1] "번호"
> colnames(health)[1]<-'ID'
> colnames(health)[1]
[1] "ID"
> head(health)
ID X1 X2 X3 X4
Y
1
1 217 67 260 91 481
2
2 141 52 190 66 292
회귀분석 실시
>
h4.lm=lm(Y~X1+X2+X3+X4,data=health)
> summary(h4.lm)
Call:
lm(formula = Y ~ X1 + X2 + X3 + X4,
data = health)
Residuals:
Min 1Q Median 3Q
Max
-54.49 -21.91 -5.10
18.66 45.69
Coefficients:
Estimate Std. Error t value
Pr(>|t|)
(Intercept) -6.8606
59.0070 -0.116 0.9084
X1 1.3826 0.2933
4.713 7.84e-05 ***
X2 -0.3745 0.8955
-0.418 0.6794
X3 -0.5302 0.2571
-2.062 0.0497 *
X4 3.6202 0.7573
4.781 6.58e-05 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’
1
Residual standard error: 29.96 on 25
degrees of freedom
Multiple R-squared: 0.8396,
Adjusted R-squared: 0.814
F-statistic: 32.72 on 4 and 25
DF, p-value: 1.332e-09
> anova(h4.lm)
Analysis of Variance Table
Response: Y
Df Sum Sq Mean Sq F value Pr(>F)
X1 1
89117 89117 99.2926 3.444e-10
***
X2 1
4680 4680 5.2142
0.03117 *
X3 1
3165 3165 3.5260
0.07213 .
X4 1
20513 20513 22.8548 6.578e-05
***
Residuals 25 22438
898
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘
모형 적합 후 anova 함수 사용
> h1.lm=lm(Y~X1,data=health)
> h2.lm=lm(Y~X1+X4,data=health)
> h3.lm=lm(Y~X1+X3+X4,data=health)
>
h4.lm=lm(Y~X1+X2+X3+X4,data=health)
> anova(h1.lm,h2.lm)
Analysis of Variance Table
Model 1: Y ~ X1
Model 2: Y ~ X1 + X4
Res.Df RSS Df Sum of Sq F
Pr(>F)
1
28 50795
2
27 26419 1 24376 24.912 3.119e-05 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1
-> 모형1의 잔차제곱합 50795, 모형2의 잔차제곱함26419,
추가제곱합 50795-26419 = 24376 이고, 검정통계랑 F0는 24.912가 된다. 이에 대한 유의확률 p-값은 3.119 X 105이므로 변수4가 유의한 변수임을 알 수 있다.
F0 =
|
[SSE(R) –
SSE(F)] / (dfR – dfF)
|
=
|
50795-26419 / 28-27
|
=24.91207
|
SSE(F)/dfF
|
26419/27
|
> anova(h2.lm,h3.lm)
Analysis of Variance Table
Model 1: Y ~ X1 + X4
Model 2: Y ~ X1 + X3 + X4
Res.Df RSS Df Sum of Sq F
Pr(>F)
1
27 26419
2
26 22595 1 3824.4 4.4007 0.04579 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’
1
> anova(h3.lm,h4.lm)
Analysis of Variance Table
Model 1: Y ~ X1 + X3 + X4
Model 2: Y ~ X1 + X2 + X3 + X4
Res.Df RSS Df Sum of Sq F Pr(>F)
1
26 22595
2
25 22438 1 156.93 0.1748 0.6794
-> (X1,X4)인 모형에 X3을 추가하는 경우의 추가제곱합 3842.4 p-값은 0.04579로 X3은 유의한 변수임을 알 수 있고, (X1,X3,X4)인 모형에 X2을 추가하는 경우는 추가제곱합 156.93, p-값은 0.6794로 X2은 유의미한 변수가 아님을 알 수
있다.
추가변수그림
새로운 변수의 효과를 그래프로 표현할 수 있는데, 이러한 그래 중의 하나가 추가변수그림(added variable plot)이다.
> library(car)
>
h4.lm=lm(Y~X1+X2+X3+X4,data=health)
> summary(h4.lm)
Call:
lm(formula = Y ~ X1 + X2 + X3 + X4, data = health)
Residuals:
Min 1Q Median 3Q Max
-54.49 -21.91 -5.10 18.66 45.69
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -6.8606 59.0070 -0.116 0.9084
X1 1.3826 0.2933 4.713 7.84e-05 ***
X2 -0.3745 0.8955 -0.418 0.6794
X3 -0.5302 0.2571 -2.062 0.0497 *
X4 3.6202 0.7573 4.781 6.58e-05 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 29.96 on 25 degrees of freedom
Multiple R-squared: 0.8396, Adjusted R-squared: 0.814
F-statistic: 32.72 on 4 and 25 DF, p-value: 1.332e-09
> avPlots(h4.lm)
-> 해석: 중회귀모형에서 어떤 특정한 회귀모형에
포함시키조가 할 떄, 변수 선택은 기존의 모형이 설명하지 못하는 부분을 새로운 변수가 들어옴으로써 추가설명력이
얼마나 유의한가에 따라 결정된다. 변수 X1의 추가변수그림에서
회귀계수는 1.3826, X4는 3.6202, 변수X1와 X에 대하 추가변수 그림이 선형성이 강한 것을 볼 수 이씅며, 따라서 이 두 변수가 회귀모형에 매우 유의하다는 것을 알 수있다.