提取NA的列表条目的名称

时间:2017-10-21 11:15:26

标签: r list

我有一个如下列表:

mtlist = as.list(mtcars)
mtlist[[2]] = NA
mtlist[[5]] = NA

提取NA列表元素名称的最简洁方法是什么?

我想出了下面的解决方案。但我想知道是否还有其他更好的选择。特别是all(is.na(x))似乎容易出错。

names(which(sapply(mtlist, function (x) all(is.na(x)))))

1 个答案:

答案 0 :(得分:2)

您可以使用is.na()函数检查列表中的哪些元素是NA,并使用names()函数提取其名称。

names(mtlist)[is.na(mtlist)]
# [1] "cyl"  "drat"