我正在尝试使用Caret包运行模型的问题。 它直接使用朴素贝叶斯函数完全正常工作:
category_model <- naiveBayes(Y ~ X1 + X2 + X3, data=train_category)
predict <- predict(category_model,test_category, type = 'class')
然后使用混淆矩阵查看准确度结果。
但是当我尝试使用交叉验证的插入符号时也是如此:
cv_3_folds <- createMultiFolds(train_label, k = 3, times = 3)
ctrl_3 <- trainControl(method = "repeatedcv", number = 3, repeats = 3, index = cv_3_folds)
naivebayes_cv3 <- train(Y~ X1 + X2,
data=train_category,
method = "nb",
trControl = ctrl_3)
它给了我这个问题:无法分配大小为21的向量。 这没有意义,我的数据集只有500 Mo.
它的第一个功能很好,所以我猜它来自插入包,但我不确切知道在哪里。
任何人都可以帮我这个吗? 谢谢。 微米。