问题描述
我正在练习逻辑回归模型和交叉验证。我想输出ROC曲线来估计性能,但是不确定在roc()函数中应使用哪个响应和预测变量。 这是我尝试的示例。为什么地块不同?我怎么了谢谢。
library(caret)
library(ggplot2)
library(lattice)
library(pROC)
data(mtcars)
mtcars$am = factor(ifelse(mtcars$am == 1,'one','zero'))
ctrl = trainControl(method="cv",number = 5,summaryFunction=twoClassSummary,classprobs=T,savePredictions = T)
m=train(am ~ qsec,data = mtcars,method = "glm",family = binomial,metric="ROC",trControl=ctrl)
curve1 = roc(response = mtcars$am,predictor = as.numeric(predict(m)),plot = T,legacy.axes = T,percent = T,main = 'Test Curve1',xlab = 'False Positive Percentage (1 - Specificity)',ylab = 'True Positive Percentage (Sensitivity)',print.auc = T,print.auc.x = 100,print.auc.y = 100,col = '#20B2AA',lwd = 4)
curve2 = roc(response = m$pred$obs,predictor = as.numeric(m$pred$pred),main = 'Test Curve2',lwd = 4)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)