如何从 Sklearn 分类报告中返回精度、召回率和 F1 分数的平均分数



我用Sklearn计算了精度,召回率和F1分数,并得到如下结果:

               precision    recall  f1-score   support
          0       0.82      0.87      0.84      2517
          1       0.86      0.81      0.83      2483
avg / total       0.84      0.84      0.84      5000

我尝试了以下代码:

 print("precision_score: ",precision_score(test_y, predicted))
 print("recall_score: ",recall_score(test_y, predicted))
 print("f1_score: ",f1_score(test_y, predicted))

它显示了标签 1 的 p、r 和 f1。

 precision_score:  0.857692307692
 recall_score:  0.808296415626
 f1_score:  0.832262077545

但是如何仅返回平均/总计的值?

它记录在classification_report页面中:

报告的平均值是患病率加权宏观平均值 类(相当于 precision_recall_fscore_support 平均值="加权"(。

因此,要获得平均分数,您可以执行以下操作:

precision, recall, f1, _ = precision_recall_fscore_support(test_y, predicted, 
                                                          average='weighted')

最新更新