【问题标题】:How to check if there is at least one case per column in r?如何检查r中的每列是否至少有一个案例?
【发布时间】:2020-11-26 08:50:49
【问题描述】:

我有一个数据框列表,我需要了解每个数据框中是否有一个由所有 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
}

【问题讨论】:

    标签: r multiple-columns na


    【解决方案1】:

    您可以将sapply/lapplycolSums 组合使用。

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

    如果数据框中的任何列包含所有 NA,这将返回逻辑值 (TRUE/FALSE)。

    【讨论】:

    • 非常感谢!完美的解决方案
    猜你喜欢
    • 2015-11-04
    • 2015-09-22
    • 2015-07-23
    • 1970-01-01
    • 2022-06-17
    • 2021-08-28
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多