fusionMatrix 函数和不同大小的矩阵

shi*_*ish 2 r matrix confusion-matrix

我正在使用插入符包来使用confusionMatrix 函数。该函数对于 2x2(或 5x5 等)矩阵完美地工作。例子:

表格1:

   1  2
1 25 15
2  8 33

confusionMatrix(Table1) -> works!
Run Code Online (Sandbox Code Playgroud)

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

表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
Run Code Online (Sandbox Code Playgroud)

由于我被迫使用 fusionMatrix 函数,如何绕过这个麻烦?

flo*_*del 5

尝试这个:

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

这个想法是将您的输入转换为table共享完全相同水平的两个因子 ( l)。那么你保证它Table2会是正方形的。