Как исключить определенные переменные из рецепта?

При использовании step_regex Функция для построения рецепта для модели, она создает дополнительные столбцы для определенных шаблонов в исходном столбце. Есть ли способ исключить оригинальную колонку из рецепта, как только я закончу с этим?

Например, в приведенном ниже примере продукт содержит как оригинальные description столбец и два недавно созданные step_regex, Я хочу решение, которое интегрировано с recipe объект, так что я могу использовать его непосредственно в caret::train,

library(recipe)
data(covers)

rec <- recipe(~ description, covers) %>%
  step_regex(description, pattern = "(rock|stony)", result = "rocks") %>%
  step_regex(description, pattern = "ratake families")

rec2 <- prep(rec, training = covers)

with_dummies <- bake(rec2, newdata = covers)

2 ответа

Решение

Просто нашел решение. Я думаю, что могу изменить роль для столбцов, которые я не хочу использовать в качестве предикторов.

rec <- rec %>% add_role(description, new_role = "dont_use")

С обновлением recipes &amp;gt;=0.20 , Bake() теперь будет выдавать ошибку, если new_data не содержит все необходимые столбцы. Рекомендуемое решение — использовать update_role_requirements().

      rec <- rec %>% update_role_requirements(role = "dont_use", bake = FALSE)
Другие вопросы по тегам