使用python转换为json结果后的混淆矩阵格式

2024-10-01 13:30:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我的混乱矩阵代码会是这样的

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

我得到了这样的结果

^{pr2}$

在我将上面的混淆矩阵结果转换为json之后。我的json结果应该是这样的

results = [{'confusionmatrix' : confusionmatrix}]

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

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

但是,我的预期产量应该是这样的

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

在哪里可以更改代码以获得这样的结果?在


Tags: 代码jsonfalsetruedataframevalue矩阵predict
1条回答
网友
1楼 · 发布于 2024-10-01 13:30:43

我认为需要:

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}]}]

相关问题 更多 >