티스토리 뷰

INTRO

1. 회귀분석이란?

2. 단순회귀분석 

3. 다중회귀분석(중회귀분석)

4. 다항회귀분석

 

   회귀분석 방법 : summary

  - Residuals(잔차)

  - Coefficients(회귀계수)

  - 모델 적합도 : Multiple R-squared, Adjusted R-squared, F-statistic, p-value

 

다중회귀분석(Multiple Regression Analysis)

test_regression_2.R
rm(list=ls())
setwd = "~/Rcoding"

## multiple linear regression
set.seed(2)
u = runif(10,0,11)
v= runif(10,11,20)
w = runif(10,1,30)
y = 3 + 0.1*u + 3*v -3*w + rnorm(10,0,0.1)

dfrm = data.frame(y,u,v,w)
dfrm

# plot-1, y vs. each u,v,w
plot(y ~ ., data=dfrm)

출력결과

> source("~/R_coding/test_regression_2.R", echo=TRUE)

> rm(list=ls())

> setwd = "~/Rcoding"

> ## multiple linear regression
> set.seed(2)

> u = runif(10,0,11)

> v= runif(10,11,20)

> w = runif(10,1,30)

> y = 3 + 0.1*u + 3*v -3*w + rnorm(10,0,0.1)

> dfrm = data.frame(y,u,v,w)

> dfrm
            y         u        v         w
1   -9.690729  2.033705 15.97407 20.195064
2    6.593820  7.726114 13.15005 12.238937
3  -18.641259  6.306590 17.84462 25.269786
4   25.074657  1.848571 12.62738  5.364542
5   14.811383 10.382233 14.64754 11.070895
6   14.769441 10.378225 18.68194 15.174424
7   46.400364  1.420749 19.78759  5.328159
8    9.108600  9.167937 13.03243 11.354815
9  -38.029897  5.148204 15.00328 28.916677
10  24.113556  6.049821 11.67481  4.838788

> # plot-1, y vs. each u,v,w
> plot(y ~ ., data=dfrm)
Hit <Return> to see next plot:

 

독립변수 u, v, w 에 따른 종속변수 y의 분포

 

 

 

선형 회귀 모델 진단 그래프(Linear Regression Model Diagnostic Graph)

test_regression_2.R
...(이상 동일)....

# plot-2, OLS(Ordinary Least Squares) model diagnostic
model = lm(y ~ u+v+w, data=dfrm)
model
summary(model)

plot(model)

## 2,2 subplot type
# par(mfrow=c(2,2))
# plot(model)

출력결과

...(중략)...

> # plot-2, OLS(Ordinary Least Squares) model diagnostic
> model = lm(y ~ u+v+w, data=dfrm)

> model

Call:
lm(formula = y ~ u + v + w, data = dfrm)

Coefficients:
(Intercept)            u            v            w  
     3.0417       0.1232       2.9890      -2.9978  


> summary(model)

Call:
lm(formula = y ~ u + v + w, data = dfrm)

Residuals:
      Min        1Q    Median        3Q       Max 
-0.188562 -0.058632 -0.002013  0.080024  0.143757 

Coefficients:
             Estimate Std. Error  t value Pr(>|t|)    
(Intercept)  3.041653   0.264808   11.486 2.62e-05 ***
u            0.123173   0.012841    9.592 7.34e-05 ***
v            2.989017   0.016586  180.215 1.97e-12 ***
w           -2.997816   0.005421 -552.981 2.36e-15 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.1303 on 6 degrees of freedom
Multiple R-squared:      1,	Adjusted R-squared:      1 
F-statistic: 1.033e+05 on 3 and 6 DF,  p-value: 1.588e-14


> plot(model)
Hit <Return> to see next plot: 
Hit <Return> to see next plot:

 

Coefficients:

(Intercept), u, v, w 모두 *** p-value < 0.001을 만족한다.

Multiple R-squared = Adjusted R-squared = 1로 회귀식이 데이터를 매우 잘 설명한다.

따라서 하나의 종속변수 y는 다중 독립변수 u,v,w 간에 선형관계를 가진다고 추정할 수 있으며 회귀식은 다음과 같다.

 

$ y = 3.0417 + 0.1232*u + 2.9890*v -2.9978*w $

 

Fig.1

 

Fig.2

 

Fig.3

 

Fig.4

 

2행 2열 subplot 형태로 표현

 

Fig.1: Residuals vs Fitted

  • 정규성(Normality) 확인
  • 선형 회귀에서 오차는 평균이 0이고 분산이 일정한 정규 분포를 가정
  • 예측된 y 값과 무관하게 잔차의 평균은 0이고 분산은 일정해야 한다.
  • 따라서 이 그래프에서는 기울기 0인 직선이 관측되는 것이 이상적이다.
  • u,v,w 다중 독립변수에 의한 선형 회귀로 예측된 y의 잔차인 Residuals가 0에 가깝게 분포한다.

Fig.2 : Normal Q-Q 

  • 정규성(Normality) 확인
  • 표준화된 잔차(Standardized Residuals)의 확률(Probability) plot
  • 잔차가 정규 분포를 따르는지 확인하기 위한 chart
  • 각 점들이 기울기가 1인 직선에 가까울수록 정규성 가정을 만족한다.

Fig.3 : Scale-Location

  • 등분산성(Homoscedasticity) 설명
  • 선형 회귀로 예측된 독립변수를 Y 축에 표준화 잔차 절대값의 제곱근 
  • 이 경우도 기울기가 0인 직선이 이상적이다.
  • Y축 0에서 멀리 떨어진 값이 관찰된다면 해당 점은 회귀 직선에 적합하지 않으며 이상치(outlier)일 가능성이 있다.

Fig4. Residuals vs Leverage

  • X축 Leverage, Y축 표준화된 잔차(Standardized Residuals)
  • Leverage는 독립변수(설명변수)가 얼마나 극단에 치우쳐 있는지를 나타내며 outlier, high leverage point, influential observation로 구분한다.

          outlier : 회귀 모형으로 잘 예측되지 않는 관측치

         high leverage point : 예측 변수의 이상치(outlier)

         influential observation : 통계 모형 계수 결정에 불균형한 영향을 미치는 관측치, Cook's distance 통계치로 확인.

 

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
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
글 보관함