Aplicando vtreat aos dados de aluguel de bikes
Neste exercício, você vai criar data frames one-hot-encoded dos dados de julho/agosto de aluguel de bikes, para usar com o xgboost mais adiante.
Os data frames bikesJuly e bikesAugust já foram carregados.
Para facilitar, definimos a variável vars com a lista de colunas de variáveis do modelo.
Este exercício faz parte do curso
Aprendizado Supervisionado em R: Regressão
Instruções do exercício
- Carregue o pacote
vtreat. - Use
designTreatmentsZ()para criar um plano de tratamentotreatplanpara as variáveis emvarsa partir debikesJuly(os dados de treino).- Defina a flag
verbose=FALSEpara evitar que a função imprima muitas mensagens.
- Defina a flag
- Preencha as lacunas para criar um vetor
newvarsque contenha apenas os nomes das variáveis transformadascleanelev. Imprima-o. - Use
prepare()para criar um data frame de treino one-hot-encodedbikesJuly.treat.- Use o argumento
varRestrictionspara restringir as variáveis que você usará anewvars.
- Use o argumento
- Use
prepare()para criar um data frame de teste one-hot-encodedbikesAugust.treata partir debikesAugust, da mesma forma. - Chame
str()em ambos os data frames preparados para ver a estrutura.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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
___
___