如何计算矩阵中的下三角元素

时间:2018-05-16 08:53:21

标签: r

假设我有一个矩阵。假设我有一个下三角矩阵的列表。我如何计算矩阵中元素的数量?

例如,

Matrix <- c(0, 4, 3, 1, 2,
            0, 0, 3, 2, 1,
            0, 0, 0, 2, 1,
            0, 0, 0, 0, 1,
            0, 0, 0, 0, 0)
Matrix <- matrix(Matrix, 5, 5)

> Matrix
     [,1] [,2] [,3] [,4] [,5]
[1,]    0    0    0    0    0
[2,]    4    0    0    0    0
[3,]    3    3    0    0    0
[4,]    1    2    2    0    0
[5,]    2    1    1    1    0

如何计算此矩阵中元素的数量? 该矩阵包含10个元素。如何计算R?

2 个答案:

答案 0 :(得分:1)

对于大小为n x n的矩阵,下三角形中的元素数量为

n *(n - 1)/ 2

答案 1 :(得分:1)

我们可以使用函数lower.tri获取下三角形元素,然后我们可以将它们相加以计算元素数量。

sum(lower.tri(Matrix))
#[1] 10

其中

lower.tri(Matrix) #returns

#      [,1]  [,2]  [,3]  [,4]  [,5]
#[1,] FALSE FALSE FALSE FALSE FALSE
#[2,]  TRUE FALSE FALSE FALSE FALSE
#[3,]  TRUE  TRUE FALSE FALSE FALSE
#[4,]  TRUE  TRUE  TRUE FALSE FALSE
#[5,]  TRUE  TRUE  TRUE  TRUE FALSE