我想从重复保持样本(相同大小)创建的决策树创建精度度量向量。我在CARET尝试这个。
library(caret)
ctrl <- trainControl(method = "LGOCV",
repeats = 60, p=0.66)
mod1 <- train(Species ~ ., data = iris,
method = "rpart",
trControl = ctrl)
我的目标是从60次重复试验中获取准确度量的向量。但不知道下一步该做什么。
通过一次试验,我会使用confusionMatrix()。但不知道在这种情况下该怎么做。
思想?
答案 0 :(得分:0)
首先,对于method = "LGOCV"
,请使用number = 60
而不是repeats
。
有一个名为resamples
的子对象。
> ctrl <- trainControl(method = "LGOCV",
+ number = 60, p=0.66)
>
> mod1 <- train(Species ~ ., data = iris,
+ method = "rpart",
+ trControl = ctrl)
> str(mod1$resample)
'data.frame': 60 obs. of 3 variables:
$ Accuracy: num 0.902 0.961 0.922 0.922 0.941 ...
$ Kappa : num 0.853 0.941 0.882 0.882 0.912 ...
$ Resample: chr "Resample14" "Resample13" "Resample15" "Resample11" ...
> length(unique(mod1$resample$Resample))
[1] 60
请参阅returnResamp
中的trainControl
选项。默认情况下,这会保存最佳模型的结果。您也可以为每个调整参数获取它们。
最高