R:选择包含给定数量NAs的行

R:选择包含给定数量NAs的行,r,R,我有一个带NAs的六列数据帧。我只希望选择那些包含最多三个NAs的行。 我可以使用sum(is.na(my.df[,c(1:6)]),找到NAs的数量,但无法使用“subset”或任何其他函数选择数据帧的子集,条件sum(is.na(log.df[,c(1:6)])使用rowSums: > mydf[rowSums(is.na(mydf)) <= 3, ] C1 C2 C3 C4 C5 C6 1 6.4 NA 6.1 6.2 NA NA 2 7.1 6.4 6.

我有一个带NAs的六列数据帧。我只希望选择那些包含最多三个NAs的行。
我可以使用
sum(is.na(my.df[,c(1:6)]),
找到NAs的数量,但无法使用“subset”或任何其他函数选择数据帧的子集,条件
sum(is.na(log.df[,c(1:6)])使用
rowSums

> mydf[rowSums(is.na(mydf)) <= 3, ]
   C1  C2  C3  C4  C5  C6
1 6.4  NA 6.1 6.2  NA  NA
2 7.1 6.4 6.5 5.9 7.0 6.9
3 7.1 7.0 6.9 6.9 6.9 7.0
4 6.9  NA 6.9  NA 7.1  NA
5 6.8  NA 7.1 7.1 6.8 7.2
  • 其中有多少小于或等于3

    > rowSums(is.na(mydf)) <= 3
    [1]  TRUE  TRUE  TRUE  TRUE  TRUE FALSE FALSE
    

    >rowSums(is.na(mydf))感谢您的解释
    
    > rowSums(is.na(mydf))
    [1] 3 0 0 3 1 5 5
    
    > rowSums(is.na(mydf)) <= 3
    [1]  TRUE  TRUE  TRUE  TRUE  TRUE FALSE FALSE