想要在R编程中创建用户定义的函数,用于将数据拆分为训练和测试,并从函数返回样本、训练和测试


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并将其设置为您希望数据集为的比率。

最新更新