gpt4 book ai didi

python - 混淆矩阵取值错误

转载 作者:行者123 更新时间:2023-12-01 01:57:49 24 4
gpt4 key购买 nike

我正在尝试使用 sci-kit learn 为癫痫数据集创建一个混淆矩阵 https://archive.ics.uci.edu/ml/datasets/Epileptic+Seizure+Recognition

准备完毕后,进行交叉验证和建模,我得到的结果如下(我标记了屏幕截图):

现在,当我想获得混淆矩阵时,我收到此错误:

    from sklearn.metrics import confusion_matrix
conf = confusion_matrix(pred["y"], pred["PredictedLabel"])
print(conf)

enter image description here

我该如何解决这个问题?

最佳答案

您可以将预测标签和真实标签转换为 str:

conf = confusion_matrix(pred["y"].astype(str), pred["PredictedLabel"].astype(str))

尝试重新创建类似的问题,请考虑以下情况,其中预测和真实是不同类型:

import pandas as pd
from sklearn.metrics import confusion_matrix

pred = pd.DataFrame()
pred["y"] = [1,2,3]
pred["PredictedLabel"] = ['1','2','3']
conf = confusion_matrix(pred["y"], pred["PredictedLabel"])
print(conf)

它将给出错误:ValueError:标签输入类型的混合(字符串和数字)

如果将它们都转换为 str 类型(您也可以使用其他类型作为 int 或 float,但对于预测标签和真实标签,两者必须相同):

import pandas as pd
from sklearn.metrics import confusion_matrix

pred = pd.DataFrame()
pred["y"] = [1,2,3]
pred["PredictedLabel"] = ['1','2','3']
conf = confusion_matrix(pred["y"].astype(str), pred["PredictedLabel"].astype(str))
print(conf)

结果:

[[1 0 0]
[0 1 0]
[0 0 1]]

关于python - 混淆矩阵取值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49969788/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com