我需要制作一个包含 TPR 和 FPR 值以及精度和召回率的表格。我在 python 中使用 sklearn.metrics 包中的 roc_curve 和 precision_recall_curve 函数。我的问题是每个函数都为我提供了不同的阈值向量,而我只需要一个即可将值合并为单个表中的列。有人可以帮我吗?
提前致谢
我需要制作一个包含 TPR 和 FPR 值以及精度和召回率的表格。我在 python 中使用 sklearn.metrics 包中的 roc_curve 和 precision_recall_curve 函数。我的问题是每个函数都为我提供了不同的阈值向量,而我只需要一个即可将值合并为单个表中的列。有人可以帮我吗?
提前致谢
阈值有两个主要区别。
顺序不同。roc_curve
阈值按降序排列,precision_recall_curve
阈值按升序排列。
数字不同。在roc_curve
,,n_thresholds = len(np.unique(probas_pred))
而在precision_recall_curve
数n_thresholds = len(np.unique(probas_pred)) - 1
。在后者中,roc_curve
不包括最小阈值。同时,最后的精度和召回值分别为 1. 和 0.,没有对应的阈值。因此,tpr、fpr、precision和recall的item数是相同的。
那么,回到您的问题,如何制作一个包含 tpr、fpr、精度和召回率以及相应阈值的表格?以下是步骤:
roc_curve