如何解决多次折叠的ROC图
我需要绘制4倍交叉验证的ROC曲线。
我做了什么:
set.seed(20)
split <- sample.split(all_df$Group,SplitRatio = 0.75)
training_set <- subset(all_df,split == TRUE)
test_set <- subset(all_df,split == FALSE)
training_set[-length(training_set)] <- scale(training_set[,-length(training_set)])
test_set[-length(test_set)] <- scale(test_set[,-length(test_set)])
#4-fold for outer CV
folds <- createFolds(training_set$Group,4)
split_up <- lapply(folds,function(ind,dat) dat[ind,],dat = training_set)
parms_list_SVM_P <- list()
model_list_SVM_P <- list()
for (i in 1:4) {model_SVM_P <- train(Group ~ .,data = split_up[[i]],method = "svmPoly",trControl = fitControl,metric = "Accuracy",verbose = FALSE,tuneLength = 10)
model_list_SVM_P[[i]] <- model_SVM_P
parms_list_SVM_P[[i]] <- model_SVM_P$bestTune}
因此在model_list_SVM_P
中,我接受了该模型的所有培训,并且我想做类似的事情:
我使用MLeval包创建了多个图,但是我无法弄清楚如何绘制均值和标准差。开发人员。
我现在有这个:
res <- evalm(list(model_list_SVM_P[[1]],model_list_SVM_P[[2]],model_list_SVM_P[[3]],model_list_SVM_P[[4]]),gnames=c("1","2","3","4"),rlinethick = 0.73,dlinecol= "beige",cols = c("cornflowerblue","navy","chartreuse1","red"))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。