繁体   English   中英

如果特定列集中的值在R中为“ NA”,则仅选择行

[英]Select only rows if the value in a particular set of columns is 'NA' in R

我有一个包含许多行和列的数据框架(3000x37),我希望只能选择可能具有> = 2列值“ NA”的行。 这些列具有不同数据类型的数据。 如果我只想通过以下方式选择一列,我知道该怎么做:

df[is.na(df$col.name), ]

如果要选择两个(或更多)列,如何进行选择?

首先创建一个向量nn ,每行中的NA数为,然后仅选择> = 2 NA d[nn>=2,]那些行。

d = data.frame(x=c(NA,1,2,3), y=c(NA,"a",NA,"c"))
nn = apply(d, 1, FUN=function (x) {sum(is.na(x))})
d[nn>=2,]

   x    y
1 NA <NA>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM