我有一个由5个类别的nnet:multinom
构成的26个变量的多项式模型:
mirna_multinom_0 = multinom(formula_0, data= clase_training, maxit=10000 )
然后,我使用以下命令创建ROCS:
multiclass.roc(clase_training$clase, mirna_multinom_0$fitted.values,plot=TRUE)
我要绘图。
pred_test_inter_multinom_5 = predict(interaction_multinom_model_5, newdata = clase_test, "probs")
multiclass.roc(clase_test$clase, pred_test_inter_multinom_5,plot=TRUE)
为了理解它们,我将其存储为对象e
,并将对比度称为names(e$roc)
以查看我的对比度。
e = multiclass.roc(clase_training$clase, mirna_multinom_0$fitted.values)
names(e$rocs)
[1] "Control/Idiop_grave" "Control/Idiop_leve" "Control/Isquem_grave"
[4] "Control/Isquem_leve" "Idiop_grave/Idiop_leve" "Idiop_grave/Isquem_grave"
[7] "Idiop_grave/Isquem_leve" "Idiop_leve/Isquem_grave" "Idiop_leve/Isquem_leve"
[10] "Isquem_grave/Isquem_leve"
哪个给了我2个图,一个在>方向,另一个在
现在。 我能以某种方式在绘图中绘制每个对比的标题吗?
而且,是否有一种方法可以针对每个ROC对比度获取曲线AUC下的面积?我仅在针对多项式的消息中获取它。 Wich没有PROC图。 我能否获得多项式ROC,或者仅是其无图形表示的构造?
我是否可以以某种方式在图中绘制每个对比的标题?
您将需要自己遍历曲线,但是可以轻松完成,例如:
for (contrast in names(e$rocs)) {
plot(e$rocs[[contrast]][[1]], col = "green", main = contrast)
plot(e$rocs[[contrast]][[2]], col = "blue", add = TRUE)
}
有没有一种方法可以获取每个ROC对比度的曲线AUC下的面积?
您可以使用auc
功能执行类似的操作:
for (contrast in names(e$rocs)) {
print(contrast)
print(auc(e$rocs[[contrast]][[1]]))
print(auc(e$rocs[[contrast]][[2]]))
}
我可以获取多项式ROC,还是仅获取没有图形表示的构造?
[Hand&Till在doi:10.1023/A:1010920819831中描述的一种AUC平均值。没有相应的曲线可表示。