R 후진제거법

Jmnote (토론 | 기여)님의 2021년 11월 25일 (목) 10:31 판 (→‎방법2: stepAIC())

1 개요

R backward elimination
R 후진제거법

2 방법1: step() ★

df <- mtcars
full.model <- lm(mpg ~ ., data=df)
step.model <- step(direction="backward", object=full.model)
summary(step.model)
→ mtcars에는 변수가 총 11개 있는데, 이중에 mpg를 종속변수로 하고, 나머지 변수 10개를 투입변수로 하였다.
→ 후진제거법에 따라 단계별로 변수 1개씩 제거되고 3개가 남았다.
→ 0단계: full model (AIC=70.9)
→ 1단계: cyl 제거 (AIC=68.92)
→ 2단계: vs 제거 (AIC=66.97)
→ 3단계: carb 제거 (AIC=65.12)
→ 4단계: gear 제거 (AIC=63.46)
→ 5단계: drat 제거 (AIC=62.16)
→ 6단계: disp 제거 (AIC=61.52)
→ 7단계: hp 제거 (AIC=61.31)
→ 더 이상 AIC를 낮출 수 없어 종료 ( 최종적으로 wt, qsec, am 이 남았다. )

3 방법2: stepAIC()

사용법과 결과는 step()과 동일하므로, 이것 대신 그냥 step()을 사용하면 된다...

library(MASS) # stepAIC()

df <- mtcars
full.model <- lm(mpg ~ ., data=df)
step.model = stepAIC(direction="backward", object=full.model)
summary(step.model)

4 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}