“ ValueError:设置具有序列的数组元素。” ROC-AUC曲线

时间:2018-10-11 16:17:27

标签: python roc multiclass-classification

在尝试建立多类logistic回归模型时,我想绘制所有类的单向休息的ROC曲线。

这是我用来尝试生成ROC图的代码,


from sklearn.preprocessing import label_binarize
y_test1 = label_binarize(y_test, classes=[0,1,2])
y_pred1 = label_binarize(y_pred, classes=[0,1,2])

for i in range(3):
    fpr[i], tpr[i], threshold = metrics.roc_curve(y_test1[:, i], y_pred1[:, i])
    roc_auc[i] = metrics.auc(fpr[i], tpr[i])

for i in range(3):
    plt.figure()
    plt.plot(fpr[i], tpr[i], label='ROC curve (area = %0.2f)' % roc_auc[i])
    plt.plot([0, 1], [0, 1], 'k--')
    plt.xlim([0.0, 1.0])
    plt.ylim([0.0, 1.05])
    plt.xlabel('False Positive Rate')
    plt.ylabel('True Positive Rate')
    plt.title('Receiver operating characteristic for Class ' + str(i) + ' VS rest')
    plt.legend(loc="lower right")
    plt.show()

最初,我能够生成图形,但是在遇到其他一些问题之后,我不得不重新安装anaconda。安装后,我无法获取图形,而是收到此错误消息:

ValueError: setting an array element with a sequence.

不知道为什么现在会产生错误,但以前却没有。谢谢!

0 个答案:

没有答案