R에서 tidymodels로 모델링하기
David Svancer
Data Scientist
cty로 hwy 예측
$$hwy = \beta_{0} + \beta_{1} cty$$
모델 매개변수
cty로 hwy 예측
$$hwy = \beta_{0} + \beta_{1} cty$$
모델 매개변수
훈련 데이터에서 추정된 매개변수
$$\small hwy = 0.77 + 1.35(cty)$$
parsnip의 모델 수식
일반형
outcome ~ predictor_1 + predictor_2 + ...
축약형
outcome ~ .
예측 변수 cty로 hwy 예측
hwy ~ cty
R에서 통합된 모델 지정 문법
모델 유형 지정
엔진 지정
모드 지정
parsnip으로 모델 명세 정의
linear_reg()
lm_model을 fit()에 전달
data
lm_model <- linear_reg() %>%set_engine('lm') %>%set_mode('regression')
lm_fit <- lm_model %>%
fit(hwy ~ cty, data = mpg_training)
tidy() 함수
parsnip 모델 객체 입력term과 estimate 열에 추정된 계수 제공
tidy(lm_fit)
# A tibble: 2 x 5
term estimate std.error statistic p.value
<chr> <dbl> <dbl> <dbl> <dbl>
1 (Intercept) 0.769 0.528 1.46 1.47e- 1
2 cty 1.35 0.0305 44.2 6.32e-97
학습된 parsnip 모델을 predict()에 전달
new_data는 예측할 데이터셋 지정
predict()의 표준 출력
new_data와 동일.predhwy_predictions <- lm_fit %>% predict(new_data = mpg_test)hwy_predictions
# A tibble: 57 x 1
.pred
<dbl>
1 25.0
2 27.7
3 25.0
4 25.0
5 22.3
# ... with 47 more rows
bind_cols() 함수
단계
mpg_test에서 hwy, cty 선택bind_cols()에 전달해 예측 열 추가mpg_test_results <- mpg_test %>% select(hwy, cty) %>%bind_cols(hwy_predictions) mpg_test_results
# A tibble: 57 x 3
hwy cty .pred
<int> <int> <dbl>
1 29 18 25.0
2 31 20 27.7
3 27 18 25.0
4 26 18 25.0
5 25 16 22.3
# ... with 47 more rows
R에서 tidymodels로 모델링하기