1

キャレット パッケージを使用して、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

混乱マトリックス関数を使用せざるを得ないので、どうすればこの問題を回避できますか?

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入力を、まったく同じレベルを共有する 2 つの因子に変換するというアイデアでした( l)。Table2次に、それが正方形になることが保証されます。

于 2014-06-01T01:23:51.703 に答える