НачатьНачать бесплатно

Создание рецепта для удаления высококоррелированных признаков

Обнаружив сильно коррелирующие признаки, их можно удалять не вручную, а с помощью шага рецепта step_corr() из пакета tidymodels. При этом step_corr() не удаляет все коррелирующие признаки подряд — он стремится исключить как можно меньше признаков. Как вы видели в упражнении с выбором ответа, удаляется тот признак, который максимально перекрывается с какой-либо комбинацией других признаков. Логика здесь такая: остальные признаки уже содержат ту же информацию, поэтому удалённый признак по-прежнему представлен в наборе данных через них.

Пакеты tidyverse и tidymodels уже загружены для вас.

Это упражнение является частью курса

Снижение размерности в R

Посмотреть курс

Инструкции к упражнению

  • Создайте рецепт, который использует step_corr() с порогом 0,7, применяя этот шаг только к числовым предикторам.
  • Примените рецепт к house_sales_df и сохраните отфильтрованные данные в filtered_house_sales_df.
  • Используйте tidy(), чтобы определить, какой столбец или столбцы были удалены фильтром step_corr().

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Create a recipe using step_corr to remove numeric predictors correlated > 0.7
corr_recipe <-  
  ___(price ~ ., data = ___) %>% 
  ___(___, ___ = ___) %>% 
  ___(___) 

# Apply the recipe to the data
___ <- 
  ___ %>% 
  ___(new_data = ___)

# Identify the features that were removed
___(___, ___ = ___)
Редактировать и запускать код