我在matrix()
创建了一个空矩阵,当我需要测试给定矩阵是否为空时,我该怎么做?我知道is.na(matrix())
是TRUE
,但如果给定的矩阵是更高维度,则无法确定。
我的意思是空的是满为NA
或NULL
的元素。
答案 0 :(得分:3)
我猜你只是在寻找all
。这是一个小例子:
M1 <- matrix(NA, ncol = 3, nrow = 3)
# [,1] [,2] [,3]
# [1,] NA NA NA
# [2,] NA NA NA
# [3,] NA NA NA
M2 <- matrix(c(1, rep(NA, 8)), ncol = 3, nrow = 3)
M2
# [,1] [,2] [,3]
# [1,] 1 NA NA
# [2,] NA NA NA
# [3,] NA NA NA
all(is.na(M1))
# [1] TRUE
all(is.na(M2))
# [1] FALSE