Skip to content

R활용 단순 다중회귀 #

Find similar titles

21회 업데이트 됨.

Edit
  • 최초 작성자
    Tuohy
  • 최근 업데이트
    Tuohy

Structured data

Category
Statistics

다중 회귀분석(Multiple Regression) #

다중 회귀분석의 정의 #

다중 회귀분석이란 단순 회귀분석과는 달리 독립변수가 2개 이상인 경우에 사용된다. 기본 가정으로, 설명변수는 2개이며, 각 설명변수는 종속변수와 선형관계에 있다. 단순회귀분석보다는 추가적인 독립변수를 도입함으로써 오차항의 값을 줄여 분석 내용을 향상시킬 수 있다.

Image

이미지 출처 : http://learnx.tistory.com/18

다중 회귀분석은 크게 확인적 요인 분석(confirmatory analysis)과 탐색적 요인 분석(exploratory analysis)으로 두 가지의 분석방법으로 구분할 수 있다.

확인적 요인 분석(CFA)과 탐색적 요인 분석(EFA) #

모형 선택을 적용하고자 하는 이론에 근거를 둔 경우 확인적 요인 분석이라고 하고, 적용할 이론을 사전에 정해놓지 않고 가능한 여러 모형을 고려한 이후에 가장 적절한 모형을 고르는 분석을 탐색적 요인분석 이라고 한다. 즉, 탐색적 요인 분석은 수집한 데이터에 가장 잘 맞는 모형을 찾아내는 방법으로 모형의 설명력은 매우 좋으나, 그 모형을 다른 데이터에 적용하여 일반화 시켰을 때에 잘 맞지 않을 수 있다는 단점을 가지고 있다.

Image

이미지 출처 : 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)

0.0.1_20230725_7_v68