开始使用免费开始使用

生成随机的训练/测试集划分

在接下来的几个练习中,您将使用包 ggplot2 中的 mpg 数据。该数据包含不同年份多种汽车品牌与车型的特征。我们的目标是根据高速油耗来预测城市油耗。

本练习中,您将把 mpg 划分为训练集 mpg_train(占数据的 75%)和测试集 mpg_test(占数据的 25%)。一种做法是使用函数 runif()文档)生成一列 0 到 1 之间的均匀随机数。

如果您有一个大小为 \(N\) 的数据集 dframe,并且想要一个大约占 \(100 * X\)%(其中 \(X\) 介于 0 和 1 之间)的随机子集,那么:

  1. 生成一个均匀随机数向量:gp = runif(N)
  2. dframe[gp < X,] 的大小会大致符合要求。
  3. dframe[gp >= X,] 将是其互补集。

本练习是课程的一部分

R 中的监督学习:回归

查看课程

练习说明

  • 使用函数 nrow文档)获取数据框 mpg 的行数。将该数赋给变量 N 并打印。
  • 计算 N 的 75% 约等于多少行。将其赋给变量 target 并打印。
  • 使用 runif() 生成一个包含 N 个均匀随机数的向量,命名为 gp
  • 使用 gpmpg 划分为 mpg_trainmpg_test(其中 mpg_train 约占 75% 的数据)。
  • 使用 nrow() 检查 mpg_trainmpg_test 的大小。它们的规模是否大致正确?

交互式实操练习

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

# mpg is available
summary(mpg)
dim(mpg)

# Use nrow to get the number of rows in mpg (N) and print it
(N <- ___)

# Calculate how many rows 75% of N should be and print it
# Hint: use round() to get an integer
(target <- ___)

# Create the vector of N uniform random variables: gp
gp <- ___

# Use gp to create the training set: mpg_train (75% of data) and mpg_test (25% of data)
mpg_train <- ___
mpg_test <- ___

# Use nrow() to examine mpg_train and mpg_test
___
___
编辑并运行代码