假设我有一个矩阵。假设我有一个下三角矩阵的列表。我如何计算矩阵中元素的数量?
例如,
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?
答案 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