confusionMatrix函数和不同大小的矩阵

时间:2014-06-01 00:13:43

标签: r matrix confusion-matrix

我正在使用插入符号包处理confusionMatrix函数。该功能与2x2(或5x5等)矩阵完美配合。例如:

表1:

   1  2
1 25 15
2  8 33

confusionMatrix(Table1) -> works!

但如果我有一个不同大小的表:

表2:

    5   6   7
3   1   1   0
4   8   5   0
5 153  57   3
6  57 105  19
7   6  27  27
8   0   3   6

confusionMatrix(Table2) -> Won't work!
Error: Error in !all.equal(nrow(data), ncol(data)) : invalid argument type

我怎么能绕过这个麻烦,因为我被迫使用confusionMatrix函数?

1 个答案:

答案 0 :(得分:3)

试试这个:

x <- as.integer(Prediction)
y <- Test$quality
l <- union(x, y)
Table2 <- table(factor(x, l), factor(y, l))
confusionMatrix(Table2)

我们的想法是将您的输入转换为table两个具有完全相同级别(l)的因子。然后保证Table2将是正方形。