您好,提前致谢。我caret
用来交叉验证包中的神经网络nnet
。在函数的method
参数中,trainControl
我可以指定我的交叉验证类型,但所有这些都随机选择观察结果进行交叉验证。无论如何,我可以使用插入符号通过 ID 或硬编码参数对数据中的特定观察结果进行交叉验证吗?例如,这是我当前的代码:
library(nnet)
library(caret)
library(datasets)
data(iris)
train.control <- trainControl(
method = "repeatedcv"
, number = 4
, repeats = 10
, verboseIter = T
, returnData = T
, savePredictions = T
)
tune.grid <- expand.grid(
size = c(2,4,6,8)
,decay = 2^(-3:1)
)
nnet.train <- train(
x = iris[,1:4]
, y = iris[,5]
, method = "nnet"
, preProcess = c("center","scale")
, metric = "Accuracy"
, trControl = train.control
, tuneGrid = tune.grid
)
nnet.train
plot(nnet.train)
假设我想CV_GROUP
在iris
数据框中添加另一列,并且我希望插入符号交叉验证神经网络的观察值,1
该列的值为:
iris$CV_GROUP <- c(rep.int(0,times=nrow(iris)-20), rep.int(1,times=20))
这可能caret
吗?