首页 文章

如何过滤dplyr中的列,使用字符对象或向量指定列

提问于
浏览
2

我正在创建一个使用dplyr包过滤数据框的函数 .

列的名称更改,我可以使用字符对象指定它并指定“one_of”参见下文:

ICD=c("ICD.y")

 test<-filter(test1,one_of(ICD)=="9")

我收到这个错误:

Error in filter_impl(.data, quo) : Variable context not set

数据框test1包含变量“ICD.y”以及使用值为9的多行 . 我想通过在使用之前指定要过滤的列的名称来进行此过滤 . dplyr过滤功能 .

预先感谢您的帮助 .

阿尔比特

1 回答

  • 2

    这可以通过 lazyevallazyeval 完成

    library(dplyr)
    test1 %>% 
          filter_(lazyeval::interp(~Col ==9, Col = as.name(ICD)))
    

相关问题