在R中绘制一个表格

时间:2014-10-17 21:00:23

标签: r plot svm knn confusion-matrix

我使用table函数显示带有kNN / SVM分类混淆矩阵的结果。

示例:

svmE1071 <- function(x,y,type) {
  library(e1071)

  (...)

  confTab <- table(pred=pred, true=y[,1])
  return(confTab)
}

> myKknn(y, yUnknown)

        unknown
  yWohn1       6
  yFlur1      18
  yBad1       12
> svmE1071(y, yUnknown, "linear")
        true
pred     unknown
  yWohn1       3
  yFlur1      25
  yBad1        8
> svmE1071(y, yUnknown, "polynomial")
        true
pred     unknown
  yWohn1       8
  yFlur1      20
  yBad1        8
> svmE1071(y, yUnknown, "radial")
(...)

如何在R中生成一个带有多个混淆矩阵(如分组条形图)的条形图?

      yWohn1 xxxx
 kNN  yFlur1 xxxxxxxxxxxxxxx
      yBad1  xxxxxxxx

      yWohn1 x
 SVMl yFlur1 xxxxxxxxxxxx
      yBad1  xxxxxxxxxxx

 (...)

1 个答案:

答案 0 :(得分:2)

首先,您需要将表分配给某个变量:

table1 <- svm(...)
table2 <- svm(...)
...

然后你可以将它们与cbind结合起来:

allTables <- cbind(table1, table2, ...)

然后使用barplot:

barplot(allTables, beside=TRUE, names=c("SVN","kNN"))

有关详细信息,请参阅?barplot