You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

dplyr筛选变量及匹配值出错,是否需改用match()函数?

问题解决:dplyr filter无数据返回的原因及修复方案

你的代码问题出在filter的条件写法上——你把变量名Interaction_Type用单引号包裹了,这时候实际是在比较**字符串'Interaction_Type'**和"print",这两个值永远不相等,所以过滤后没有数据返回。

完全不需要改用match()函数,只需要修正filter的写法即可,同时注意字符串匹配的大小写(你要找的是"Print",但原代码里写的是"print",R默认区分大小写):

df2 <- df1 %>% 
  select(Interaction.ID, Name.ID, Created.At, Interaction_Type) %>% 
  filter(Interaction_Type == "Print") 

额外提示:

  • select里的变量名可以直接写,不用加单引号和c(),dplyr支持这种更简洁的写法
  • 如果你的数据里Interaction_Type的值大小写不统一,也可以用tolower(Interaction_Type) == "print"来忽略大小写匹配

内容的提问来源于stack exchange,提问作者jsaab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 09:44:53