开始使用免费开始使用

为自行车租赁构建随机森林模型

在本练习中,您将再次构建一个模型,用于根据天气、日类型(节假日、工作日或周末)以及一天中的时间来预测每小时的自行车租赁数量。您将使用 7 月份的数据来训练模型。

您将使用 ranger 包来拟合随机森林模型。对于本练习,调用 ranger()docs)的关键参数是:

  • formula
  • data
  • num.trees:森林中的树的数量。
  • respect.unordered.factors:指定如何处理无序因子变量。我们建议在回归中将其设置为 "order"。
  • seed:由于这是一个随机算法,您需要设置随机种子以获得可重复的结果。

由于输入变量较多,为了方便,我们将在变量 outcomevars 中分别指定因变量和自变量,并使用 paste()docs)拼接出表示模型公式的字符串。

数据框 bikesJuly 已预加载。示例代码已给出因变量和自变量的名称。

本练习是课程的一部分

R 中的监督学习:回归

查看课程

练习说明

  • 填空以创建公式 fmla,将 cnt 表达为自变量的函数。并打印它。
  • 加载 ranger 包。
  • 使用 rangerbikesJuly 数据上拟合模型: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 = ___))
编辑并运行代码