我的源代码

roc_auc_score(y_true=y_test, y_score=y_predict)

报错

ValueError: Data is not binary and pos_label is not specified

解决办法

第一步:将你的y_true和 y_score改为数组格式并且dtype为float64

第二步:设置pos_label

详细尝试情况截图



尝试1

尝试2

尝试3

尝试4


综上,没有设置pos_label=2的情况下直接用roc_auc_score是肯定不行的,需要这样:

import numpy as np

from sklearn import metrics

fpr, tpr, thresholds = metrics.roc_curve(y_c, y_d, pos_label=2)

metrics.auc(fpr, tpr)