如何检查 r 中每列是否至少有一个案例?

How to check if there is at least one case per column in r?

我有一个数据框列表,我需要了解每个数据框中是否有一列全部由 NA 填充。所以我需要一个像 complete.cases 这样的函数,但是对于列来说,它会告诉我每列是否至少有一个答案。我该怎么做?

下面是一个简化的例子(这里可能不会有NA列,只是为了让你明白):

mylist <- list()
for (i in 1:10){
        temp <- data.frame(V1 <- rnorm(10),
                           V2 <- rnorm(10),
                           V3 <- rnorm(10))
        temp[temp<0] <- NA
        mylist[[i]] <- temp
}

您可以结合使用 sapply/lapplycolSums

any_column_with_all_NA <- sapply(mylist, function(x) any(colSums(!is.na(x)) == 0))

这将是 return 逻辑值 (TRUE/FALSE) 如果数据框中的任何列都包含 NA