dplyr filter_at命令缺少值

dplyr filter_at命令缺少值,r,dplyr,R,Dplyr,我有一个关于R和dplyr命令的问题。我得到了以下数据帧df: ID bank type 1 own online 2 own offline 3 NaN total 现在我想结合类型“total”对NaN值进行过滤。我知道我可以很容易地只在bank列上进行过滤,但我对合并两个列感兴趣,其中一个是NaN。 我的命令无效 vec <- c("total) l1 <- df %>% filter_at(vars(type,


我有一个关于R和dplyr命令的问题。我得到了以下数据帧df:

  ID   bank  type
  1    own   online
  2    own   offline
  3    NaN   total   
现在我想结合类型“total”对NaN值进行过滤。我知道我可以很容易地只在bank列上进行过滤,但我对合并两个列感兴趣,其中一个是NaN。 我的命令无效

vec <- c("total)
l1 <- df %>% filter_at(vars(type,bank), any_vars(!(.  %in% vec) && (!is.na(.))))
nrow(l1)

vec由于要在不同的列上使用两个不同的函数,因此应在此处使用
filter

library(dplyr)
df %>% filter(is.na(bank) & type  %in% vec)
这也可以在base R中完成:

subset(df, is.na(bank) & type  %in% vec)

这是一个带有
数据的选项。表

library(data.table)
setDT(df)[is.na(bank) & type %in% vec]