중다회귀분석(Multiple Regression)

 

기본가정에 위배되는지 여부 어떻게 찾을 수 있나?

-       가설(1) Expected e_i=0 è 이론적 검토.

n  통계적 기법으로 확인하는 방법은 없다.

n  이론적 사고에 근거해서 빠진 변수가 없는지


-       가설(2) Linearity è 산점도(univariate distribution)

n  선형성을 충족하고 있다면, 잔차(prediction을 그리고 나서 남은 것들)가 독립변수에 관계없이 잔차의 평균값은 다 같아야 한다.

n  Univariate distribution

u  Prediction하기 전에 변수 자체의 분포가 normal distribution인지 확인. 그러나 여기서 highly skewness가 있다고 해서 linearity assumption을 위배한 것은 아니고, 위배될 수 있다는 신호(signal)을 주는 것.

l  (1) Bivariate distribution을 본다. (2) 예측값과 잔차 사이의 분포를 본다. 산점도를 통해서 선형성을 위반하고 있는지 아닌지 확인.

n  Partial regression plot

u  사용해서 선형성의 가정에 위배되는지 확인한다.

u  다른 변수들이 고려된 상태에서 PRP를 봐서 이것이 선형성을 위반하는가 본다.

u  다른 변수 통제 안한 상태에서 bivariate보는 것과 통제하고 Partial 보는 것의 plot이 다른 경우가 왕왕 있다.


-       가설(3) Homoscedasticity è partial regression plot

n  Linearity homoscedasticity가 충족된다면 Studentized(=standardized) residual은 독립변수의 값이 달라져도 variance가 같아야 한다.

n  등분산성이 나타나지 않으면 방법을 바꾸어야 한다.

n  Partial regression plot

u  Y=B0 + B1X1 + B2X2 +… 의 식에서 X1을 빼고 계산하면 X1에 의한 부분은 error에 남아있게 된다.

u  B1이란 값은 X1이 한 unit올라갈 때 Y에 어떤 효과가 있는지 보는 것. Partial effect라는 뜻임.

u  Partial effect가 무슨 뜻인지 아는 것이 중요하다. X1하나만 넣은 단순회귀분석하고는 다른 것임.

n  SPSS procedure

u  Linear regression è Plot

u  Check “Produce all partial plots”

n  등분산선은 prediction하고 나서 남은 error의 양에 각 X에 고정된 값이 있는데, 독립변수의 값에 관계없이 분산의 양이 다 같다.


-       가설(4) No correlated error è time series, spatical, cluster sampled data일 경우 아니면 문제 안됨.


-       가설(5) No perfect multicollinearity è VIF

n  회귀분석 모형에 독립변수들 간에 나타나는 상관관계

n  높은 다중공선성 자체가 회귀분석 가정을 위반한 것은 아니다.

n  그러나 표준오차를 왜곡시키기 때문에 중요한 것!

u  사실은 통계적으로 유의미한 효과가 나타나야 하는 변수를 왜곡시킴

n  Inflated standard error : 표준오차를 높인다. 표준오차가 커지면 t값이 작아지고, 통계적 유의성은 떨어진다.

n  VIF :

u  독립변수가 x1 x2 … 가는데, 특정 변수를 넣었을 때의 R^2값이다. 특정 변수의 R^2값이 높으면 문제가 된다는 뜻.

u  특정 변수에 대해서 다 계산을 해준다. 그러면 변수에 따라서 VIF값이 다 나오게 됨.

u  R^2가 분산/회귀계수의 standard error(표준오차)를 높이는데, 이것을 어느정도나 높이는지 보는 것.

u  VIF값이 크면 다중공선성 값이 의심되는 것. à 통상 10 이상이면 높다 함.

l  그러나 경험적으로는 10은 너무 큰 것 같다. 학자에 따라서 4 이상이면 의심하라 하기도.

l  기억해야 할 값은 VIF = 4.

n  Tolerance : VIF와 역으로 같은 값..

n  VIF Tolerance 값 둘 중에 하나만 확인하면 된다. VIF는 커지면 문제가 되고, Tolerance는 작으면 문제가 된다.

n  (1)VIF넣는 법, (2)숫자 4, (3)어떻게 처리하는지 이 세 가지만 알면 된다!

n  SPSS

u  Linear regression è statistics

u  Click “collinearity diagnostics”

n  VIF값이 매우 높거나 Tolerance 값이 낮더라도, 해당 변수의 회귀계수 자체가 significant 하지 않으면 공선성 문제는 신경쓰지 않아도 된다.

u  But 연구자가 원하는 관심변수가 유의하지 않고, 다중공선성이 높다면, 공선성 문제를 해결하고 분석에 사용하여야 한다.


-       가설(6) Normally distributed error è normal probability plot histogram

n  잔차(조건평균에서 뺀 값) 0을 중심으로 모여있으면서 대칭적으로 분포되어야 한다.

n  정상성의 가정을 위반했는지 살펴보려면

u  Normal probability plot (P-P plot, Q-Q plot)

u  히스토그램을 사용하여

u  Residual distribution을 살펴본다.

 

-       또 한가지 고려해야 할 사항 : Outlier.

n  특시 사례수가 적은 분석을 할 때 outlier문제는 매우 중요하다.

 

 

Assumption

Remedies of violation

(1)

Expected ei=0

Add missing variables (이론적 사고를 통하여)

(2)

Linearity

Correct functional form

1.     Log transformation

2.     Polynomial equation

※ log

- for linearity

- to reduce

Heteroscedasticity

(3)

Homoscedasticity

1.     Change functional form(log)

2.     HLM

A.     개인이 특정한 집단에 embedded, nest된 경우에 사용한다.

3.     Weighted least squares

(4)

No correlated error

Multilevel/mixed model

Autoregressive model(자기회귀모델)

(5)

No perfect multicollnearity

If perfect multicollinearity .. drop the variable (combine collinear variables) Or get better data

(6)

Normally distributed error

Residual analysis

 

-       Log transformation : May or may not work

n  등분산성과 선형성은 맞물려 돌아갈 수 밖에 없다.

n  선형성, 등분산성 가정을 위반한 경우 이를 교정하기 위해 사용한다.

-       e is normally distributed

n  잔차의 분포는 어떻게 확인하는가?

u  Predicted value of X=x, Residual = Y

n  SPSS

u  Analyze > Regression > Linear

u  Define X and Y vriables

u  “Save”

l  Unstandardized predicted values

l  The standardized residuals

u  변수창에 “pre_1”“zre_1”변수가 생성된 것을 확인

n  Make a scatter plot Y=zre_1, X=Pre_1

 

-       잔차를 가지고 scatterplot을 해보니

n  높은 점과 낮은 점에서 residual (+)이고 가운데는 (-)값이 더 많다.

n  이런 그림이 나오면, 본래의 종속변수(original response variable)과 독립변수 사이에 비선형관계(curved relationship)이 있다고 함.

n  è Square했다. Regression을 독립변수^2 값으로 넣었다.

n  è 처음 모델보다는 나아졌으나 여전히 가운데가 내려가고 양 쪽이 높은 형태의 curve가 남아있다.

n  è Linear term Square term을 모두 넣는다(면적, 면적^2 변수 둘 다 넣음)

n  è 그리고나서 잔차분석을 해보니 이것이 가장 낫다. 그러면 이 모델을 채택함.

 

-       Unstandardized Predicted Value : Y값의 특정 value들이다.

-       Standardized Residual : 표준화된 잔차

 

-       ANOVA table이 나온다.

n  ANOVA : 집단이 여러 개일 때 차이가 있는지 확인하는 방법

u  측정의 수준이 올라간다 : 명목è서열è등간è

u  단순하게 6, 9, 12를 명목척도화 한 다음에 소득에 차이가 있는지 없는지 확인해보니 집단간 소득의 차이가 존재한다! 라고 결론을 내는 것이 분산분석

n  아버지의 사회경제적 지위에 따라서 그룹을 나누면 자식의 사회경제적 지위가 차이가 있는가?”를 본 것이다. ANOVA에서 본 것과 같은 것이다.

u  Regression에 나온 분산분석 표도 논리가 같은 것.

 

-       R^2

n  단순평균에서 자승합을 TSS라고 하고, SSE는 남은 양, RSS regression해서 설명해낸 양.

n  R^2 = 0.117이라면 TSS에서 11.7%를 설명해냈다는 것.

-       F-test

n  H0 : B1=B2=B3=…=0 // H1 : 하나는 0이 아니다.

n  RSS/k (k:독립변수 숫자), 의 평균이 SSE/[N-(k+1)]  보다 별로 크지가 않다.

n  F= (RSS/k) / (SSE/[N-(k+1)])

 

-       ANOVA of Two Variables

n  그륩이 세 개 이상이고, 그룹에 number가 들어가고, 이 경우는 dummy변수이다. 연속변수를 명목척도화한다.

n  특정한 그룹의 종속변수의 평균

-       F-test

n  H0 : 그룹 간 분산의 평균이 그룹 내 분산의 평균보다 크지 않다.

n  …..a..a..a……..b.b…b……….c…c..c……..

u  그룹 간 분산이 더 크면, 그 그룹들은 서로 평균이 차이가 있을 것

-       평균값을 이어도 회귀선이 나오지 않는다. 왜냐하면 독립변수와 종속변수 사이에 선형 관계가 없기 때문이다. 선형성을 위반하고 있는 상황으로부터 새로운 분석의 레벨로 나아갈 수 있다.

-       Linearity를 점검하기 위해 ANOVA를 해볼 수 있다. 선형성을 충족시키고 있다고 하면, 잔차는 그룹별로 차이가 없어야 한다. 독립변수를 고려하고 나서 잔차는 패턴이 없어야 한다. 잔차는 패턴이 없어야 선형성이 충족되는 것이다.

-       만약 선형성 가정이 충족된다면, residual(그리고 standardized residual)은 독립변수의 값과 상관없이 동일한 평균을 가져야 한다.

-       예시)

n  일단 모델을 돌리고, 잔차값을 구한다.

n  Regression model을 돌리고 개별 사례들의 잔차를 구하자.

n  Regression model을 보니 t값이 41로 높게 나왔다. 그러나 여기서 멈추면 안된다.

n  왜냐하면 이러한 결과는 독립변수와 종속변수 사이에 linear association suggest하지만, coefficient significance linearity validity에 대해서는 아무것도 알려주지 않는다.

n  독립변수1-독립변수1에 따른 잔차, 독립변수2-독립변수2에 따른 잔차  ANOVA해보니 F값이 significant하게 나온다.

n  그러면 어떻게 해결해야 할까?

n  아버지의 직업지위점수를 소수점 이하를 버리고(TRUNC), 10으로 나눴다. 그리고 Residual create하라는 명령도 넣었다.

n  그리고 나서 ANOVA를 돌리니까 아버지의 직업지위점수에 대한 것은 insignificant해졌다





+ Recent posts