内容简介:问题背景:我们构建数据模型的时候,需要把数据集划分为训练集和测试集,训练集用来训练模型,测试集用来测试模型的泛化能力。本文总结R语言如何把数据集划分为训练集和测试集?结合实际工作,罗列4中解决方案。代码片段如下:
问题背景:我们构建数据模型的时候,需要把数据集划分为训练集和测试集,训练集用来训练模型,测试集用来测试模型的泛化能力。本文总结R语言如何把数据集划分为训练集和测试集?
解决方案
结合实际工作,罗列4中解决方案。
1 使用smaple()函数
代码片段如下:
data <- read.csv("raw_data/data.csv") set.seed(20180808) index <- sort(sample(nrow(data), nrow(data)*.7)) train <- data[index,] test <- data[-index,]
2 使用caret包
代码片段如下:
library(caret) data <- read.csv("raw_data/data.csv") set.seed(20180808) index <- createDataPartition( data$y, p = 0.7, list = FALSE ) train <- data[index, ] test <- data[-index, ]
3 使用caTools包
代码片段如下:
library(caTools) data <- read.csv("raw_data/data.csv") set.seed(20180808) index <- sample.split(data$y,SplitRatio = 0.3) train <- subset(data, index == TRUE) test <- subset(data, index == FALSE)
4 使用scorecard包
代码片段如下:
library(scorecard) data <- read.csv("raw_data/data.csv") set.seed(20180808) data_list <- split_df(data, ratio = 0.7) train <- data_list$train test <- data_list$test
参考资料
1 https://topepo.github.io/caret/data-splitting.html 2 http://shujuren.org/article/637.html
版权声明:作者保留权利,严禁修改,转载请注明原文链接。
数据人网是数据人学习、交流和分享的平台http://shujuren.org 。专注于从数据中学习到有用知识。 平台的理念:人人投稿,知识共享;人人分析,洞见驱动;智慧聚合,普惠人人。 您在数据人网平台,可以1)学习数据知识;2)创建数据博客;3)认识数据朋友;4)寻找数据工作;5)找到其它与数据相关的干货。 我们努力坚持做原创,聚合和分享优质的省时的数据知识! 我们都是数据人,数据是有价值的,坚定不移地实现从数据到商业价值的转换!
以上所述就是小编给大家介绍的《R Tip:数据集划分为训练集和测试集?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 如何划分限界上下文
- 如何给 Hadoop 集群划分角色
- 整数划分--思考问题背后的数学原理
- 【LeetCode】贪心算法--划分字母区间(763)
- JVM笔记-运行时内存区域划分
- Python列表推导式一则:等价类划分
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。