통계/회귀분석 - R 프로그래밍

회귀분석 - 결정계수 + 분산분표(R)

BlueNoa 2021. 6. 21. 03:39
728x90
반응형

· 결정계수

회귀분석에서 간편하면서도 유용하게 회귀식을 요약하는 지표 중 하나로 사용하는 계수가 있다. 이를 R**2로 표현하는 결정계수라고 한다.

 

R**2 = SSR / SST, R**2이 클수록 자료를 잘 설명한다고 할 수 있다.

하지만 주의해야만 한다. 결정계수는 모델의 정당성을 모두 설명/해결하지는 못한다.

 

즉, 결정계수란 자료의 총 변동 중에서 회귀에 의해 설명되는 변동의 비율을 나타내며, 0 <= R**2 <= 1의 범위를 갖는다.

 

 

<결정계수의 성질>

(1) R**2 = 1 이란 회귀 직선 적합 후 모든 잔차가 0인 경우로 모든 자료가 회귀직선과 일치할 때를 나타낸다.

 

(2) R**2 ≒ 0일 때는 회귀직선이 자료의 경향을 설명하는데 아무런 역할을 하지 않아 회귀가 의미가 없음을 나타낸다.

 

(3) 결정계수는 회귀분석이 얼마나 유용한가를 요약하는데 유용하며, 값이 클수록 회귀가 적합하다고 할 수 있다.

 

(4) 단 중회귀(설명변수가 2개 이상)에서는, 설명하는데 관련이 없는 설명변수가 추가될 때마다 결정계수가 증가하는 문제가 있어 무조건 큰 결정계수를 선호하는 것은 조심해야 한다.

 

(5) 결정계수는 표본으로 얻을 때 모집단 자료에서 얻은 것보다 커지는 경향이 있다.

 

(6) 4~5 문제를 해결하기 위해 보안하거나 개선된 수정 결정계수는 다음과 같다.

 

(7) 결정계수 R**2은 표본 상관계수를 제곱하여도 얻을 수 있다.

 


<예제>

x = c(5, 2, 4, 7, 1, 8, 2, 5, 7, 1) # 고장 제품의 수
y = c(78, 31, 62, 110, 15, 125, 25, 66, 98, 12) # 수리 시간

reg = lm(y ~ x)
summary(reg) # 회귀분석 요약
anova(reg) # 분산분석표

summary(reg)의 결과

Call:
lm(formula = y ~ x)

Residuals:
   Min     1Q Median     3Q    Max 
-8.546 -2.642  2.466  3.312  4.591 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   -2.614      3.186   -0.82    0.436    
x             15.432      0.653   23.63 1.09e-08 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 5.125 on 8 degrees of freedom
Multiple R-squared:  0.9859, Adjusted R-squared:  0.9841 
F-statistic: 558.5 on 1 and 8 DF,  p-value: 1.093e-08

결정계수는 0.9859, 수정된 결정계수는 0.9841

 

ANOVA(reg)의 결과

Analysis of Variance Table

Response: y
          Df  Sum Sq Mean Sq F value    Pr(>F)    
x          1 14669.5 14669.5  558.54 1.093e-08 ***
Residuals  8   210.1    26.3                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

 

 

 

 

 

 

 

 

728x90
반응형