为自行车租赁构建随机森林模型
在本练习中,您将再次构建一个模型,用于根据天气、日类型(节假日、工作日或周末)以及一天中的时间来预测每小时的自行车租赁数量。您将使用 7 月份的数据来训练模型。
您将使用 ranger 包来拟合随机森林模型。对于本练习,调用 ranger()(docs)的关键参数是:
formuladatanum.trees:森林中的树的数量。respect.unordered.factors:指定如何处理无序因子变量。我们建议在回归中将其设置为 "order"。seed:由于这是一个随机算法,您需要设置随机种子以获得可重复的结果。
由于输入变量较多,为了方便,我们将在变量 outcome 和 vars 中分别指定因变量和自变量,并使用 paste()(docs)拼接出表示模型公式的字符串。
数据框 bikesJuly 已预加载。示例代码已给出因变量和自变量的名称。
本练习是课程的一部分
R 中的监督学习:回归
练习说明
- 填空以创建公式
fmla,将cnt表达为自变量的函数。并打印它。 - 加载
ranger包。 - 使用
ranger在bikesJuly数据上拟合模型:bike_model_rf。ranger()的第一个参数是公式fmla。- 使用 500 棵树,并设置
respect.unordered.factors = "order"。 - 将随机种子设置为
seed,以保证结果可复现。 - 打印模型。R-squared 是多少?
交互式实操练习
通过完成这段示例代码来试试这个练习。
# bikesJuly is available
str(bikesJuly)
# Random seed to reproduce results
seed
# The outcome column
(outcome <- "cnt")
# The input variables
(vars <- c("hr", "holiday", "workingday", "weathersit", "temp", "atemp", "hum", "windspeed"))
# Create the formula string for bikes rented as a function of the inputs
(fmla <- paste(___, "~", paste(___, collapse = " + ")))
# Load the package ranger
___
# Fit and print the random forest model
(bike_model_rf <- ranger(___, # formula
___, # data
num.trees = ___,
respect.unordered.factors = ___,
seed = ___))