gpt4 book ai didi

R - 查找所有值为 NA 或单个值(0 方差)的列

转载 作者:行者123 更新时间:2023-12-02 07:20:53 25 4
gpt4 key购买 nike

我正在处理一个包含多个列的数据框,这些列是单个值或 NA。我知道如何找到一个或另一个列:

df1 <- data.frame(col1 = 1:10, col2 = 0, col3 = seq(1,20,2))
df1[c(1,4,7),'col2'] <- NA


names(df1)[sapply(df1, function(x) sum(is.na(x)) == length(x))]
names(df1)[sapply(df1, function(x) length(unique(x)) == length(x))]

但是我想不出一种方法来捕获所有 NA 或单个值。在上述情况下,col2 应该被捕获。

有什么建议吗?

最佳答案

首先,您可以检查列中是否存在 NA:

any(is.na(df1$col2))

然后,如果您想知道一列是否将所有值都设置为零而不考虑 NA 值,只需使用:

all(df1$col2 == 0, na.rm = TRUE)

按照 alex2006 的建议使用 rowSums 可能会给您带来不便,因为您有一个总和为 0 的数字排列,并且它还会标记该列。

关于R - 查找所有值为 NA 或单个值(0 方差)的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46428941/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com