Набор данных, с которым я работаю, взят из Текущего опроса населения по IPUMS, и в нем содержится около 1 716 121 наблюдений 13 переменных.Я пытаюсь выполнить перекрестную проверку этих данных и затем отобразить полученный AUC.
Модель, которую я использую, представляет собой логистическую регрессию, а моя зависимая переменная представляет собой двоичную переменную (имеет значение 0 или 1).Всякий раз, когда я запускаю код, я получаю предупреждение:
В bind_rows_ (x, .id): векторизация «помеченных» элементов может не сохранять их атрибуты.
IЯ не уверен, что это значит.
Я также получаю ошибки:
Ошибка выбора (., .Id, исход, pred): неиспользованные аргументы (.id, исход, pred) "
и
Ошибка в summarise_impl (.data, dots): Ошибка оценки: объект «исход» не найден.
Если кто-то может помочь мне сэто, это будет с благодарностью!
Мой код:
mod1_formula<-formula("self_employ~
as.factor(educ_level)+
as.factor(SEX)+
as.factor(RACE)+
as.factor(NCHILD)")
cps_data %>%
crossv_kfold(k=2) %>%
mutate(model = purrr::map(train, ~glm(mod1_formula, data=.,
family=binomial))) -> trained.models
trained.models %>%
unnest( pred = map2( model, test, ~predict( .x, .y, type =
"response")) ) -> test.predictions`
trained.models %>%
unnest( fitted = map2(model, test, ~augment(.x, newdata =
.y)),
pred = map2( model, test, ~predict( .x, .y, type =
"response")) ) -> test.predictions
test.predictions %>% select(.id, outcome, pred )
test.predictions %>%
group_by(.id) %>%
summarize(auc = roc(outcome, .fitted)$auc) %>%
select(auc)
gg <- ggplot(data=test.predictions, aes(x= auc))
gg <- gg+geom_histogram()
gg