如何在dplyr中使用like运算符的否定形式进行数据筛选?
在dplyr中实现%like%的否定过滤
你不能直接使用!%like%这种写法,因为R的运算符语法不支持这样的组合。这里提供两种可行的解决方式:
- 用括号包裹
%like%表达式,再添加否定符号!:
my_df %>% filter(!(text %like% "dirty talk"))
- 若处理本地数据框(非数据库连接场景),推荐使用
stringr包的str_detect函数实现否定匹配:
library(stringr) my_df %>% filter(!str_detect(text, "dirty talk"))
补充说明:%like%更多是dplyr配合数据库连接(dbplyr)时的语法,处理本地数据时str_detect的兼容性和通用性更强。
内容的提问来源于stack exchange,提问作者Pawels
相关产品推荐
相关产品推荐

