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

Обработка данных об аренде велосипедов с помощью vtreat

В этом упражнении вы создадите фреймы данных с one-hot-кодированием для данных об аренде велосипедов за июль и август, чтобы затем использовать их с xgboost.

Фреймы данных bikesJuly и bikesAugust уже загружены.

Для удобства переменная vars содержит список столбцов-переменных для модели.

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

Обучение с учителем в R: регрессия

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

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

  • Загрузите пакет vtreat.
  • С помощью designTreatmentsZ() создайте план обработки treatplan для переменных из vars на основе bikesJuly (обучающих данных).
    • Установите флаг verbose=FALSE, чтобы функция не выводила лишние сообщения.
  • Заполните пропуски, чтобы создать вектор newvars, содержащий только имена преобразованных переменных типа clean и lev. Выведите его на экран.
  • С помощью prepare() создайте обучающий фрейм данных с one-hot-кодированием bikesJuly.treat.
    • Используйте аргумент varRestrictions, чтобы ограничить набор переменных значениями из newvars.
  • Аналогичным образом используйте prepare(), чтобы создать тестовый фрейм данных с one-hot-кодированием bikesAugust.treat на основе bikesAugust.
  • Вызовите str() для обоих подготовленных фреймов данных, чтобы изучить их структуру.

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

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

# The outcome column
(outcome <- "cnt")

# The input columns
(vars <- c("hr", "holiday", "workingday", "weathersit", "temp", "atemp", "hum", "windspeed"))

# Load the package vtreat
___

# Create the treatment plan from bikesJuly (the training data)
treatplan <- ___(___, ___, verbose = FALSE)

# Get the "clean" and "lev" variables from the scoreFrame
(newvars <- treatplan %>%
  use_series(scoreFrame) %>%        
  filter(code %in% ___) %>%  # get the rows you care about
  use_series(___))           # get the varName column

# Prepare the training data
bikesJuly.treat <- ___(___, ___,  varRestriction = ___)

# Prepare the test data
bikesAugust.treat <- ___(___, ___,  varRestriction = ___)

# Call str() on the treated data
___
___
Редактировать и запускать код