일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Bias-Variance Tradeoff
- R dplyr
- 의사결정나무
- R 결측치
- CrossValidation
- 교차타당성
- 데이터 핸들링
- R
- R ggplot2
- 이산형 확률분포
- ggsurvplot
- R 연습문제
- R select
- ISLR
- ggplot()
- 생존그래프
- geom_errorbar
- 강화학습 #추천서적 #강화학습인액션
- 확률실험
- R filter
- dplyr
- 콕스비례모형
- 생존분석
- 주식데이터시각화
- 미국 선거데이터
- R mutate
- 카플란마이어
- R문법
- 데이터핸들링
- ggplot2
- Today
- Total
Must Learning With Statistics
다중 회귀분석(Multiple Regression) 본문
12. 다중 회귀분석(Multiple Regression)
다중 회귀분석 : 단순 선형회귀분석의 확장판으로 예측자가 2개 이상 쓰이는 경우
다중 회귀분석은 예측자를 2개 이상 쓰는 경우로, 회귀분석과 거의 동일하다고 볼 수 있습니다. 식 표현은 행렬식을 이용해 표현을 하는데, 이 책의 취지와는 맞지 않으므로 간단하게 다중 회귀분석을 진행할 때 주의해야할 점들에 대해 다루면서 진행하겠습니다.
$$
\hat{y_i}=b_0+b_1x_{1i}+b_2x_{2i}\
$$
회귀식이 위 식처럼 구해져 있을 때, 회귀식의 해석은 다음과 같이 진행합니다.
$x_{1i}$가 1 단위 증가하면 $\hat{y_i}$는 $b_1$만큼 변한다.(단, $x2_i$는 고정)
$x_{2i}$가 1 단위 증가하면 $\hat{y_i}$는 $b_2$만큼 변한다.(단, $x1_i$는 고정)
여기서 중요한 점은 서로 다른 예측자는 상관성이 적어야 한다는 것입니다. 만약 $x_1$과 $x_2$의 상관성이 높다면, $x_1$이 증가하였을 때, $x_2$는 고정되지 못하고 함께 증가해버리는 문제가 발생해버립니다. 이런 상황을 다중공선성(Multicolinearity)라고 합니다. 회귀식에 다중공선성이 존재할 경우, 회귀식의 분산이 팽창을 하게 되며, $b_1$, $b_2$에 대한 추정이 불확실하게 됩니다. 그러므로 다중공선성이 존재할 경우, 회귀식에 투입되는 예측자를 다시 조정하여 회귀식을 구해야합니다. 이 부분은 후에 주성분 분석에서 다루도록 하겠습니다.
x1 = runif(n = 100, min = -10, max = 10)
x2 = 0.7*x1 + rnorm(n = 100,mean = 0,sd = 1)
y = 1.3*x1 + rnorm(n = 100, mean = 6, sd = 3)
DF = data.frame(
x1 = x1,
x2 = x2,
y = y
)
library(GGally)
ggpairs(DF)
위 그림을 보시면 x1x1, x2x2와의 상관관계가 매우 높은 것을 확인할 수가 있습니다. 이러한 경우, 회귀분석을 구했을 때, 다중공선성이 매우 의심되는 상황이 발생합니다.
다중 회귀분석
M_Reg = lm(y ~ x1 + x2)
summary(M_Reg)
Call:
lm(formula = y ~ x1 + x2)
Residuals:
Min 1Q Median 3Q Max
-7.6871 -1.8648 0.2094 1.6262 6.5584
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 6.2825 0.2965 21.192 < 2e-16 ***
x1 1.1548 0.2202 5.244 9.18e-07 ***
x2 0.2368 0.3083 0.768 0.444
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 2.937 on 97 degrees of freedom
Multiple R-squared: 0.8793, Adjusted R-squared: 0.8768
F-statistic: 353.4 on 2 and 97 DF, p-value: < 2.2e-16
언뜻 보기에는 회귀분석에 큰 문제는 없어보입니다. 다중회귀분석에서는 x1x1, x2x2의 기울기 b1b1, b2b2에 대한 가설 검정이 진행이 됩니다. x1x1의 회귀계수 b1b1은 유의한 것으로 나왔지만, x2x2의 회귀계수 b2b2는 유의하지 않은 것으로 나왔습니다.
다중공선성 진단
library(car)
vif(M_Reg)
x1 x2
19.66709 19.66709
다중공선성은 분산팽창지수(VIF)를 측정함으로써 판단이 가능합니다. 기본적으로 5보다 작으면 다중공선성이 없다고 판단할 수 있습니다. 지금은 다중공선성이 매우 높은 상황이므로 다중공선성이 존재하고 있다고 확인할 수 있습니다.
'통계 이론' 카테고리의 다른 글
카이제곱 독립성 검정 (2) | 2020.03.27 |
---|---|
다항 회귀분석(Polynomial Regression) (0) | 2020.03.23 |
회귀분석(R Code) (0) | 2020.03.23 |
단순 선형 회귀분석의 추정 (0) | 2020.03.23 |
상관분석 (R code) (0) | 2020.03.23 |