开始使用免费开始使用

创建交叉验证方案

实现 n 折交叉验证有多种方式。在本练习中,您将使用 vtreat::kWayCrossValidation() 创建一个方案,并对其进行查看。

kWayCrossValidation() 可通过如下调用创建交叉验证方案:

splitPlan <- kWayCrossValidation(nRows, nSplits, dframe, y)

其中,nRows 是要划分的数据行数,nSplits 是期望的交叉验证折数。

严格来说,kWayCrossValidation 并不会使用 dframey;它们仅用于与其他 vtreat 的数据划分函数保持兼容。您可以将二者都设为 NULL

生成的 splitPlan 是一个包含 nSplits 个元素的列表;每个元素包含两个向量:

  • train:构成训练集的 dframe 下标
  • app:构成测试集(或应用集)的 dframe 下标

在本练习中,您将为数据集 mpg 创建一个 3 折交叉验证方案。

本练习是课程的一部分

R 中的监督学习:回归

查看课程

练习说明

  • 载入 vtreat 包。
  • 获取 mpg 的行数,并将其赋给变量 nRows
  • 调用 kWayCrossValidation 创建一个 3 折交叉验证方案,并将其赋给变量 splitPlan
    • 您可以将该函数的最后两个参数设为 NULL
  • 调用 str() 查看 splitPlan 的结构。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Load the package vtreat
___

# mpg is available
summary(mpg)

# Get the number of rows in mpg
nRows <- ___

# Implement the 3-fold cross-fold plan with vtreat
splitPlan <- ___

# Examine the split plan
___
编辑并运行代码