R 将数据分为训练和测试
我已经将数据分为训练和测试,但它需要完整的数据,而不是我设置的大小-我将大小设置为250,但仍然得到接近900000的完整数据R 将数据分为训练和测试,r,R,我已经将数据分为训练和测试,但它需要完整的数据,而不是我设置的大小-我将大小设置为250,但仍然得到接近900000的完整数据 set.seed(321) SplitIndex <- sample(x = c("Train", "Test"),size = 250,replace = TRUE, prob = c(0.75,0.25)) TrainData <- loanfilev2[SplitIndex == "Train", ] TestData <- lo
set.seed(321)
SplitIndex <- sample(x = c("Train", "Test"),size = 250,replace = TRUE, prob = c(0.75,0.25))
TrainData <- loanfilev2[SplitIndex == "Train", ]
TestData <- loanfilev2[SplitIndex == "Test", ]
table(TrainData$loan_status)
table(TestData$loan_status)
set.seed(27)
KnnModel <- train(form = loan_status ~., data = TrainData, method = 'knn')
KnnModel
plot(KnnModel)
set.seed(321)
SplitIndex解决方案不起作用的原因至少有两个:(1)不正确的子集索引和(2)掩码大小不等于原始数据帧中的记录数(即行数)(如果您试图使用小于记录数的掩码对数据帧进行子集,R只会回收掩码)
在创建名为SplitIndex
的子集掩码的调用中,尝试将c(“训练”、“测试”)
替换为c(真、假)
这会给你你想要的
set.seed(321) # set the seed to get reproducable results
train_index <- sample(seq_len(nrow(loanfilev2)), size = 150) # train data indices
trainData<- loanfilev2[train_index, ] # train dataset
testData <- loanfilev2[-train_index, ] # test dataset
set.seed(321)#设置种子以获得可复制的结果
不清楚你在问什么。请以代码而不是图像的形式输入代码。能否为您的数据显示一个示例?请考虑粘贴您的代码在问题而不是图片。希望现在是我的问题是它不会调整测试和培训的大小,看看你有大小= NROM(LoFielv2)我想把它设置为一个数字,以数字为KNN模型感谢你这么多,它帮助了很多可怜的问题和措辞,我在这方面不是很出色,但这真的很有帮助-再次感谢
loanfilev2[SplitIndex, ] #Train
loanfilev2[!SplitIndex, ] #Test
set.seed(321) # set the seed to get reproducable results
train_index <- sample(seq_len(nrow(loanfilev2)), size = 150) # train data indices
trainData<- loanfilev2[train_index, ] # train dataset
testData <- loanfilev2[-train_index, ] # test dataset
sample_size <- floor(0.10 * nrow(loanfilev2)) # or whatever percent you desire