使用python转换为json结果后的混淆矩阵格式 [英] confusion matrix format after converting to json results using python

查看:265
本文介绍了使用python转换为json结果后的混淆矩阵格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的混淆矩阵代码将是这样

My confusion matrix code will be like this

confusionmatrix = pd.DataFrame(
    confusion_matrix(test["Churn"], predictions),
    columns=["Predicted False", "Predicted True"], index=["Actual False", "Actual True"]
    )

我正在得到这样的结果

Predicted False  Predicted True
Actual False              877             100
Actual True               183             179

将上面的混淆矩阵结果转换为json之后.我的json结果就是这样

After i converted this above confusion matrix results to json. My json results would be like this

results = [{'confusionmatrix' : confusionmatrix}]

final = pd.Series(results).to_json(orient='records')

[
    {
        "confusionmatrix": [
            {
                "Predicted False": 877,
                "Predicted True": 100
            },
            {
                "Predicted False": 183,
                "Predicted True": 179
            }
        ]
    }
]

但是,我的预期输出必须是这样,

But, my expected output need to be like this,

[
    {
        "confusionmatrix": [
            {
                "Actual": "False",
                "Predict": "False",
                "value": 894
            },
            {
                "Actual": "False",
                "Predict": "True",
                "value": 125
            }
        ]
    }
]

我在哪里可以更改代码以获取类似结果?

Where can i change my code for getting results like this?

推荐答案

我认为需要:

df = pd.DataFrame(confusion_matrix(test["Churn"], predictions), 
                  columns=["False", "True"], 
                  index=["False", "True"])
df.index.name= 'Actual'
df.columns.name= 'Predicted'
print (df)
Predicted  False  True
Actual                
False        877   183
True         100   179

confusionmatrix = df.unstack().rename('value').reset_index()
print (confusionmatrix)
  Predicted Actual  value
0     False  False    877
1     False   True    100
2      True  False    183
3      True   True    179

results = [{'confusionmatrix' : confusionmatrix}]

final = pd.Series(results).to_json(orient='records')
print (final)
[{"confusionmatrix":[{"Predicted":"False","Actual":"False","value":877},
                     {"Predicted":"False","Actual":"True","value":100},
                     {"Predicted":"True","Actual":"False","value":183},
                     {"Predicted":"True","Actual":"True","value":179}]}]

这篇关于使用python转换为json结果后的混淆矩阵格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆