开始使用免费开始使用

用 vtreat 处理共享单车租赁数据

在本练习中,您将为 7/8 月的单车数据创建独热编码的数据框,稍后将与 xgboost 一起使用。

数据框 bikesJulybikesAugust 已预先加载。

为方便起见,我们已定义变量 vars,其中包含用于建模的变量列列表。

本练习是课程的一部分

R 中的监督学习:回归

查看课程

练习说明

  • 加载 vtreat 包。
  • 使用 designTreatmentsZ() 基于 bikesJuly(训练数据)中 vars 的变量创建处理方案 treatplan
    • 将标志 verbose=FALSE 设为 FALSE,以避免函数打印过多信息。
  • 填空创建向量 newvars,其中仅包含经过 cleanlev 转换的变量名。打印该向量。
  • 使用 prepare() 创建独热编码的训练数据框 bikesJuly.treat
    • 使用参数 varRestrictions 将使用的变量限制为 newvars
  • 以相同方式使用 prepare() 基于 bikesAugust 创建独热编码的测试数据框 bikesAugust.treat
  • 对两个已准备好的数据框都调用 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
___
___
编辑并运行代码