0
我有2类与预先计算的总计在大熊猫数据帧格式的混淆矩阵:计算精度和调出从混淆矩阵在python
Actual_class Predicted_class_0 Predicted_class_1 Total
0 0 39 73 112
1 1 52 561 613
2 All 91 634 725
我需要计算的精度和使用循环我记得需要更多类的一般案例解决方案。
0级精度为39/91,1级精度为561/634。
对于0类召回将是39/112,对于1类将是561/613。
所以我需要通过对角线和汇总迭代得到以下结果
Actual_class Predicted_class_0 Predicted_class_1 Total Precision Recall
0 0 39 73 112 43% 35%
1 1 52 561 613 88% 92%
2 All 91 634 725
汇总(所有的行和列合计)将被删除后记,所以没有点计算它们。
我尝试下面的代码,但它不斜走,失去数据为0级:
cols = [c for c in cross_tab.columns if c.lower()[:4] == 'pred']
for c in cols:
cross_tab["Precision"] = cross_tab[c]/cross_tab[c].iloc[-1]
for c in cols:
cross_tab["Recall"] = cross_tab[c]/cross_tab['Total']
我新手大熊猫矩阵运算,真正需要你的帮助。
我确定有一种方法可以不预先计算总数。
非常感谢!