创建一个2乘2的表,在R中的一列或一行中没有值

时间:2014-10-14 16:43:04

标签: r

我需要将数据表示到2 * 2表中,但是,由于某些单元格中没有值,因此R中的表命令不提供列或行,具体取决于数据。例如:

a<-matrix(c(0,1,1,1,1,1,1,1),4,2)
table(a[,1],a[,2])

这就是它的表现:

  1
0 1
1 3

但是,我需要它像

  0  1
0 0  1
1 0  3

有什么建议吗?

1 个答案:

答案 0 :(得分:4)

问题是,您的矩阵a包含数字,数字R无法知道应显示哪些列。解决方案虽然简单。您必须将数据转换为一个因子,您可以在其中提供所有潜在的值:

table(factor(a[,1], levels = unique(c(a))),factor(a[,2], levels = unique(c(a))))
#   0 1
# 0 0 1
# 1 0 3