요약

  • 산포도&상관계수확인: 산포도 확인 후 상관계수 절대값 0.8 이상 다중공선성이 있음으로 간주함
  • torelence 확인: 하나의 독립변수를 Y, 나머지 독립변수의 조합을 X로 했을때, R^2를 계산후 torelence가 0에 가까운 값인지 확인함(torelence란 1-R^2, R^2 = 1인 경우, torelence = 0, 0인경우 다중공선성 심각)
  • 분산팽창지수(VIF:Variance Inflation Factor, VIF = 1/torelence): 일반적으로 연속형변수에서 10이상이면 다중공선성 있음으로 간주, 더미변수는 3이상이면 다중공선성으로 간주함.
  • 상태지수(Condition Index): 100 이상인 경우, 다중공선성 간주하지만 잘 사용되지 않음.

 

다중공선성 문제 해결하기

  • 다중공선성이 큰 변수가 유의미한가? R^2값이 매우 팽창하였음에도 불구하고 유의미하다는 것은 그 자체로 매우 유의미함을 의미함 => 일반적으로 제거하지 않음
  • 해당변수를 제거? 데이터입력시 변수를 잘못 구성함. 무작정 제거하지 않음
  • 주성분분석으로 변수를 재조합
  • 다중공선성이 발생한 변수를 합침:다중공선성이 높은 변수들은 비슷함을 의미하여 평균값으로 대체하기도 함

 

선형회귀분석 (statsmodels.OLS regression) result로 다중공선성 확인하기

import statsmodels.api as sm

lm = sm.OLS(train_y, train_x)
result = lm.fit()
print(result.summary())

OLS 결과

 

 

Reference

https://ysyblog.tistory.com/171

 

[회귀분석] 다중회귀분석(3) - 다중공선성(다중공선성 검정 및 해결)

다중회귀식의 분산 - 회귀분석은 여러개의 독립변수를 통해 종속변수 y의 분산을 얼마나 설명하느냐의 문제 - R-square값과 관계가 있음 ysyblog.tistory.com/168?category=1185073 [회귀분석] 단순선형회귀분

ysyblog.tistory.com

https://ysyblog.tistory.com/119

 

[회귀분석] 회귀분석 실습(1) - OLS 회귀분석 결과 해석 및 범주형 변수 처리 (Statsmodel)

Statsmodel을 활용한 회귀분석 statsmodels 패키지에서는 OLS 클래스를 사용하여 선형 회귀분석을 실시한다 독립변수와 종속변수가 모두 포함된 데이터프레임이 생성되며, 상수항 결합은 하지 않아도

ysyblog.tistory.com

https://bkshin.tistory.com/entry/DATA-20-%EB%8B%A4%EC%A4%91%EA%B3%B5%EC%84%A0%EC%84%B1%EA%B3%BC-VIF

 

DATA - 20. 다중공선성(Multicollinearity)과 VIF(Variance Inflation Factors)

이번 시간에는 다중공선성과 VIF에 대해 알아보겠습니다. 독립 변수 X는 종속 변수 Y 하고만 상관 관계가 있어야 하며, 독립 변수끼리 상관 관계가 있어서는 안 됩니다. 독립 변수간 상관 관계를

bkshin.tistory.com

 

+ Recent posts