我正在构建一个包含4个类(1.0,2.0,3.0,4.0)的混淆矩阵
但是,在某些情况下,预期和预测的数组都只有3个类:
>> expected
array([ 3., 2., 4.])
>> predicted
array([4.0, 2.0, 3.0])
因此,产生的混淆矩阵只有3x3矩阵:
from sklearn.metrics import confusion_matrix
confusion_matrix(expected, predicted)
array([[1, 0, 0],
[0, 1, 0],
[0, 0, 1]])
在这种情况下,如何制作4x4混淆矩阵?
答案 0 :(得分:2)
是的,你可以。如果使用labels关键字参数,则可以为所有类打印混淆矩阵。
>>>confusion_matrix(expected,predicted,labels=[1.,2.,3.,4.])
array([[0, 0, 0, 0],
[0, 1, 0, 0],
[0, 0, 0, 1],
[0, 0, 1, 0]])
有用的链接是confusion_matrix docs