我正在尝试使用confusion_matrix函数,如下所示:
tn, fp, fn, tp = confusion_matrix(y_true, y_predict).ravel()
y_true
和y_predict
都是名单。当我恢复他们的形状时,我得到:(71,)
。
但是我对上述声明收到以下错误:
ValueError: too many values to unpack
我不确定是不是因为(71,)
中的第二个(空)维度?如果这是问题,我不知道如何删除它。
有什么想法吗?
谢谢。
如果输出数量确定,则只能动态分配多个变量。如果将confusion_matrix
的结果分配给单个变量,则可以在循环中检查其内容并有条件地分配内容:
returned = confusion_matrix(y_true, y_predict).ravel()
for var in returned:
#... do stuff with each item in the returned collection
您也可以检查它的长度,如果它是4,您可以照常进行:
if len(returned) == 4:
tn, fp, fn, tp = returned