не могу получить графики frr, far

Вычисляю frr, far следующим образом:

far, frr, thresholds = metrics.roc_curve(label, preds, pos_label=2)
frr, far: (array([nan, nan, nan]), array([0.        , 0.33333333, 1.        ]))

Далее пытаюсь исправить array([nan, nan, nan] следующим образом:

d = far[~(numpy.isnan(far))]

Вместо nan получаю array([], dtype=float64)

Когда в конце вывожу все это, то получаю ошибку x and y must have same first dimension, but have shapes (3,) and (0,)

Если не исправляю nan, то получаю, что на рисунке:

введите сюда описание изображения

UPD: Код:

frr, far, threshold = metrics.roc_curve(scores, labels)

fig, ax = plt.subplots()

ax.plot(threshold, far, 'r--', label='FAR')
ax.plot(threshold, frr, 'g--', label='FRR')
plt.xlabel('Threshold')
plt.plot(0.01,eer,'ro', label='EER') 


legend = ax.legend(loc='upper center', shadow=True, fontsize='x-large')

# Put a nicer background color on the legend.
legend.get_frame().set_facecolor('C0')

plt.show()

В scores, labels сейчас находится: array([0., 0., 0., ..., 1., 0., 1.]), array([0., 0., 0., ..., 1., 0., 0.]) В far, frr: array([0. , 0.20470224, 1. ]), array([0. , 0.94555177, 1. ])

В результате имею вот такой график, но он, как я понимаю совсем не правильный, в чем может быть проблема?

введите сюда описание изображения


Ответы (0 шт):