查找包含缺失值的列的名称

2024-03-14

我想找到所有列的名称NA或丢失数据并将这些列名称存储在向量中。

# create matrix
a <- c(1,2,3,4,5,NA,7,8,9,10,NA,12,13,14,NA,16,17,18,19,20)
cnames <- c("aa", "bb", "cc", "dd", "ee")
mymatrix <- matrix(a, nrow = 4, ncol = 5, byrow = TRUE)
colnames(mymatrix) <- cnames
mymatrix
#      aa bb cc dd ee
# [1,]  1  2  3  4  5
# [2,] NA  7  8  9 10
# [3,] NA 12 13 14 NA
# [4,] 16 17 18 19 20

期望的结果:列"aa" and "ee".

我的尝试:

bad <- character()
for (j in 1:4){     
  tmp <- which(colnames(mymatrix[j, ]) %in% c("", "NA"))
  bad <- tmp
}

然而,我不断得到integer(0)作为我的输出。任何帮助表示赞赏。


像这样?

colnames(mymatrix)[colSums(is.na(mymatrix)) > 0]
# [1] "aa" "ee"

或者按照@thelatemail 的建议:

names(which(colSums(is.na(mymatrix)) > 0))
# [1] "aa" "ee"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

查找包含缺失值的列的名称 的相关文章

随机推荐