R활용
단순
다중회귀
#
Find similar titles
- 최초 작성자
- 최근 업데이트
Structured data
- Category
- Statistics
Table of Contents
다중 회귀분석(Multiple Regression) #
다중 회귀분석의 정의 #
다중 회귀분석이란 단순 회귀분석과는 달리 독립변수가 2개 이상인 경우에 사용된다. 기본 가정으로, 설명변수는 2개이며, 각 설명변수는 종속변수와 선형관계에 있다. 단순회귀분석보다는 추가적인 독립변수를 도입함으로써 오차항의 값을 줄여 분석 내용을 향상시킬 수 있다.
이미지 출처 : http://learnx.tistory.com/18
다중 회귀분석은 크게 확인적 요인 분석(confirmatory analysis)과 탐색적 요인 분석(exploratory analysis)으로 두 가지의 분석방법으로 구분할 수 있다.
확인적 요인 분석(CFA)과 탐색적 요인 분석(EFA) #
모형 선택을 적용하고자 하는 이론에 근거를 둔 경우 확인적 요인 분석이라고 하고, 적용할 이론을 사전에 정해놓지 않고 가능한 여러 모형을 고려한 이후에 가장 적절한 모형을 고르는 분석을 탐색적 요인분석 이라고 한다. 즉, 탐색적 요인 분석은 수집한 데이터에 가장 잘 맞는 모형을 찾아내는 방법으로 모형의 설명력은 매우 좋으나, 그 모형을 다른 데이터에 적용하여 일반화 시켰을 때에 잘 맞지 않을 수 있다는 단점을 가지고 있다.
이미지 출처 : Dragan, Dejan & Topolšek, Darja. (2014). Introduction to Structural Equation Modeling: Review, Methodology and Practical Applications.
모형 선택(Model Selection) #
모형선택이란 탐색적 요인 분석(EFA)에서 독립변수의 수가 많을 때 우선순위에 따라서 꼭 필요한 독립변수만을 이용하여 모형을 생성하는 과정이다. 회귀모형에 포함될 독립변수들을 선택할 때 기본적으로 다음과 같은 기준을 따른다.
1. 종속변수와 상관관계가 높아야 한다(높은 순으로 우선순위)
2. 선택된 독립변수들 간의 상관관계가 낮아야 한다.
- 독립변수들 간의 상관관계가 높다는 것은 중복된 정보를 모형에 넣어줌을 의미하므로 변수의 낭비 및 계산상의 오류를 초래할 수 있다.
3. 소수 정예의 원칙을 따른다.
모형 선택의 종류 #
1. all possible regressions : 가능한 모든 독립변수들의 조합들로 모형을 만든 후 서로 비교한다.
2. forward selection : 가장 유의한 독립변수부터 덜 유의한 독립변수 순으로 하나씩 추가하여 모델을 선택한다.
3. backward elimination : 처음에 모든 변수를 넣은 후 가장 기여도가 낮은 변수부터 하나씩 제거하여 모델을 생성한다.(독립변수의 수가 적을 때 주로 사용한다)
4. stepwise selection : forward selection과 backward elimination 방법을 조합하여 모델을 생성한다(가장 보편적인 방법)
예제 #
Backward Elimination #
attitude 데이터를 예제 데이터로 이용해보자
> head(attitude)
rating complaints privileges learning raises critical advance
1 43 51 30 39 61 92 45
2 63 64 51 54 63 73 47
3 71 70 68 69 76 86 48
4 61 63 45 47 54 84 35
5 81 78 56 66 71 83 47
6 43 55 49 44 54 49 34
rating 이라는 종속변수를 나머지 다른 독립변수들을 이용하여 다중회귀분석을 수행해본다.
> out = lm(rating ~ ., data = attitude)
# ~(물결표시) 다음으로 .을 입력하면 종속변수로 정의된 rating을 제외한 나머지 모든 변수가 독립변수로 모형에 선택된다.
> anova(out)
# anova 함수를 통해 분산분석표를 확인한다.
Analysis of Variance Table
Response: rating
Df Sum Sq Mean Sq F value Pr(>F)
complaints 1 2927.58 2927.58 58.6026 9.056e-08 ***
privileges 1 7.52 7.52 0.1505 0.7016
learning 1 137.25 137.25 2.7473 0.1110
raises 1 0.94 0.94 0.0189 0.8920
critical 1 0.56 0.56 0.0113 0.9163
advance 1 74.11 74.11 1.4835 0.2356
Residuals 23 1149.00 49.96
# p.value 값이 큰 privileges, raises, critical을 제외하고 모델을 재생성한다.
> out2 = lm(rating ~ complaints+learning+advance, data = attitude)
F-test #
위의 결과물 out과 out2를 anova()함수에 입력을 하면 두 모형을 비교하는 F-test를 하는데, 두 모형의 설명력을 비교하여 첫번째 모델에서 p_value 값을 통해 제거했던 세 독립변수들의 기여도를 평가할 수 있다. => 수행방법 : anova(작은 모형, 큰 모형)
> anova(out2, out)
Analysis of Variance Table
Model 1: rating ~ complaints + learning + advance
Model 2: rating ~ complaints + privileges + learning + raises + critical + advance
Res.Df RSS Df Sum of Sq F Pr(>F)
1 26 1179.1
2 23 1149.0 3 30.109 0.2009 0.8947
# 다음과 같이 3개의 독립변수의 유무에 따른 모델을 비교해본 결과, p_value가 0.8947로 유의하지 않으므로 제거된 세 변수의 기여도는 거의 없다는 것을 확인하였다.
> summary(out2)
Call:
lm(formula = rating ~ complaints + learning + advance, data = attitude)
Residuals:
Min 1Q Median 3Q Max
-12.217 -5.377 0.967 6.078 11.540
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 13.5777 7.5439 1.800 0.0835 .
complaints 0.6227 0.1181 5.271 1.65e-05 ***
learning 0.3124 0.1542 2.026 0.0532 .
advance -0.1870 0.1449 -1.291 0.2082
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 6.734 on 26 degrees of freedom
Multiple R-squared: 0.7256, Adjusted R-squared: 0.6939
F-statistic: 22.92 on 3 and 26 DF, p-value: 1.807e-07
# summary 함수를 통해 선택한 모형에 대한 정보를 확인해 보면, Multiple R-squared가 0.7256으로 모형이 종속변수 rating을 약 72.5% 설명하는 것을 확인할 수 있다.
참고 #
R을 이용한 누구나 하는 통계분석(안재형 저)
SPSS에서 회귀분석으로 영향을 미치는지 확인하기(http://learnx.tistory.com/18)