1

我正在使用 caret 包处理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函数,我该如何绕过这个麻烦?

4

1 回答 1

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是方形的。

于 2014-06-01T01:23:51.703 回答