如何使用 R 在数据框中查找表示为 NA 的值?

How to find values represented as NA in a data frame using R?

例如,我想对 "x" 列中名为 "data" 的数据集中表示为 NA 的所有值进行子集化或条件化。怎么做? 我尝试了以下代码,但它给了我 0 个观察值。

NA1 <- subset(data, data$x==NA)

谢谢!

data.table 包可以是处理数据集的非常方便的工具。特别是如果您正在处理的数据很大。

假设您有一个包含两个变量的数据 table,其中一个变量有 NA 个值

> DT = data.table(var1=c(1,NA,3,NA), var2=c(5,6,7,8))
> DT
   var1 var2
1:    1    5
2:   NA    6
3:    3    7
4:   NA    8

然后您可以简单地使用 which() 命令来查找 NAs 的子集,或者在 !which() 前面应用 'not' 运算符来对那些没有的行进行子集化NAs 在 var1.

> DT[which(is.na(var1))]
   var1 var2
1:   NA    6
2:   NA    8

指出上面的语句只会打印结果,不会对原始数据做任何改动table。

Here 您可以在 data.table 上找到很棒的常见问题解答。