def default_inv_roc_curve(Y_true, var, sample_weight=None):
"""Default ROC curve for a single variable.
Args:
Y_true: array of true classes (n*2).
var: array of variable values.
sample_weight: array of sample weights.
Returns:
Array of (signal efficiency, 1/[background efficiency]) pairs.
"""
fpr, tpr, _ = roc_curve(Y_true[:, 0], var, sample_weight=sample_weight)
print("AUC: {0:.4f}".format(auc(fpr, tpr, reorder=True)))
res = 1./len(Y_true)
return np.array([[tp, 1./max(fp, res)]
for tp,fp in zip(tpr,fpr)
if fp > 0.])
评论列表
文章目录