[R] Multiple linear regression (다중회귀분석) Start BioinformaticsAndMe Multiple linear regression (다중회귀분석) : 다중회귀분석은 예측변수(독립변수;설명변수)가 2개 이상인 회귀분석 : 다중회귀분석에서 예측변수 개수가 많을 경우, 적절한 회귀모형 선택이 필요함 : 회귀모형에 포함되는 예측변수의 선정 기준 ㄱ) 반응변수(종속변수)와 높은 상관관계 ㄴ) 선택된 예측변수들은 서로 낮은 상관관계를 보임 (다중공선성 문제를 회피) ㄷ) 예측변수의 개수는 적을수록 유리 Feature selection (변수 선택법) 1) All possible regressions - 변수들의 가능한 모든 조합들로부터 최적의 모형을 찾아냄 - 유의한 변수가 누락되지 않는 안전한 방법 - 변수가 많을수록 탐색 시간이 급증함 2) Forward stepwise selection (Forward selection) - 기여도가 높은 유의한 변수부터 하나씩 추가하는 기법 - 빠른 계산이 장점 - 이미 선택된 변수는 다시 제거되지 않음 3) Backward stepwise selection (Backward elimination) - 모든 변수를 포함한 상태에서 불필요한 변수를 제거해나가는 방법 - 중요한 변수가 제외될 가능성이 매우 적음 - 이미 제외된 변수는 다시 선택되지 않음
1. 실습데이터 로딩
2. 다중회귀분석 수행 ■반응변수 - bwt(출생시 체중) ■예측변수 - age(엄마나이), lwt(엄마몸무게), race(인종), smoke(임신중흡연상태), ptl(과거조산횟수), ht(고혈압기왕력), ui(uterine irritability 존재여부)
3. 유의하지 않은 변수 제거 : 위 다중회귀분석 결과에서 age와 ptl 변수가 유의하지 않은 것으로 확인됨 : 아래의 3가지 방법 중 하나로, 유의하지 않은 변수를 제거할 수 있음
4. 회귀모델 비교 및 평가 : F-test 분산분석으로 두 회귀모형의 설명력을 비교하여, 첫 번째 회귀모형에서 제거된 변수들의 기여도를 평가함
: F-test 결과 p-value가 0.792로 매우 크므로, 앞서 제거된 두 변수는 회귀모형에 대한 기여도가 적음을 알 수 있음
: R² 값이 0.2404 → 최종 회귀모형이 예측변수들의 24.04% 설명함 5. 다중공선성(Multicollinearity) 확인 : 다중공선성은 분산팽창지수(Variation Inflation Factor;VIF)라는 통계량을 사용하여 계산 가능 : 한 예측변수에 대해 VIF의 제곱근은 다중공선성의 정도를 나타냄 : VIF가 10을 넘으면(= GVIF^(1/(2*Df)) 값이 2를 넘으면), 다중공선성 문제를 보임
: vif 함수로 완성된 회귀모형을 검사했을 때, 다중공선성 문제는 없는 것으로 확인됨 6. 변수의 상대적 중요성 : 현재까지 사용한 변수들 중에서, 결과 예측에 가장 중요한 변수를 서열화할 수 있음
#Reference 1) http://rstudio-pubs-static.s3.amazonaws.com/189354_277dfb3a83a34a2abaae855b90fcf269.html 2) http://brokerstir.com/multiple-linear-regression-intuition/ 3) https://quantifyinghealth.com/stepwise-selection/ 4) https://slidesplayer.org/slide/11708770/ 5) https://rpubs.com/cardiomoon/190997 6) http://leoslife.com/archives/3874 7) Johnson(2000, Mutilvariate BehavioralResearch, 35,1-19) [R] Multiple linear regression (다중회귀분석) End BioinformaticsAndMe |