当前位置:  开发笔记 > 编程语言 > 正文

如何在R中的dplyr过滤器中指定"不包含"

如何解决《如何在R中的dplyr过滤器中指定"不包含"》经验,为你挑选了1个好方法。

我是R的新手

使用被调用的表SE_CSVLinelist_clean,我想提取名为where_case_travelled_1DOES 的变量不包含字符串"Outside Canada"OR的行"Outside province/territory of residence but within Canada".然后创建一个名为的新表SE_CSVLinelist_filtered.

SE_CSVLinelist_filtered <- filter(SE_CSVLinelist_clean, 
where_case_travelled_1 %in% -c('Outside Canada','Outside province/territory of residence but within Canada'))

当我只使用"c"而不是"-c"时,上面的代码有效.
那么,当我真的想要排除包含国家或省外的行时,如何指定上述内容呢?

非常感谢



1> fishtank..:

请注意,%in%返回的逻辑向量TRUEFALSE.要否定它,您可以!在逻辑语句前面使用:

SE_CSVLinelist_filtered <- filter(SE_CSVLinelist_clean, 
 !where_case_travelled_1 %in% 
   c('Outside Canada','Outside province/territory of residence but within Canada'))

关于你的原始方法-c(...),-是一个一元运算符,"对数字或复数向量(或可以强制它们的对象)执行算术"(from help("-")).由于您正在处理无法强制转换为数字或复杂的字符向量,因此无法使用-.

推荐阅读
mobiledu2402851377
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有