创建每行和每列小计的表

时间:2010-12-06 07:52:17

标签: r

我知道如何使用table在R中创建表格,如下所示:

x <- rep(1:3,4)
y <- rep(1:4,3)
z<- cbind(x,y)
table(z[,1],z[,2])

    1 2 3 4
  1 1 1 1 1
  2 1 1 1 1
  3 1 1 1 1

如何将表格的边距总和添加为如下所示:

    1 2 3 4
  1 1 1 1 1 4
  2 1 1 1 1 4
  3 1 1 1 1 4
    3 3 3 3

1 个答案:

答案 0 :(得分:8)

> a
     [,1] [,2] [,3]
[1,]    1    1    1
[2,]    1    1    1
[3,]    1    1    1

> a <- cbind(a, rowSums(a))
> a <- rbind(a, colSums(a))
> a
     [,1] [,2] [,3] [,4]
[1,]    1    3    1    5
[2,]    1    1    1    3
[3,]    1    1    1    3
[4,]    3    5    3   11

另一种方法:

a <- addmargins(a, c(1, 2), sum)