totalrows=nrow(x)
s=sample(seq(1,totalrows),0.7*totalrows)
train=x[s,]
test=x[-s,]
我应该如何将这些数据放在用户定义的函数中,这样我就不必重复它,当我传递我读取的文件时,它会拆分数据并返回样本、训练和测试数据?
您可以使用这些函数来创建测试和训练集。
#Creating train set
create_train_split <- function(dataset){
library(caTools)
set.seed(123)
split = sample.split(dataset, SplitRatio = 2/3)
training_set = subset(dataset, split == TRUE)
return(training_set)
}
#The same way creating test set
create_test_split <- function(dataset){
library(caTools)
set.seed(123)
split = sample.split(dataset, SplitRatio = 2/3)
test_set = subset(dataset, split == FALSE)
return(test_set)
}
您可以通过以下方式调用此函数
train_set = create_train_split(dataset)
test_set = create_test_split(dataset)
您可以编辑splitRatio并将其设置为您希望数据集为的比率。