矩阵的行和在对角线上方/下方

时间:2014-06-29 20:57:32

标签: r matrix diagonal rowsum

我想计算上/下三角矩阵(带对角线)的行/列和。例如:

m <- matrix(1:9, nrow=3)
#result:
upperRowSums(m)
## [1] 12 13 9
lowerRowSums(m)
## [1] 1 7 18

我知道这可以通过简单的for循环完成,但我想避免这种情况。我正在寻找纯粹的R解决方案。

1 个答案:

答案 0 :(得分:4)

一种方式:

rowSums(m * upper.tri(m, diag=TRUE))
#[1] 12 13  9