繁体   English   中英

匹配其他data.frame的字符串模式

[英]Match a string pattern from other data.frame

假设我有两个数据帧a和b,a有一个称为“详细信息”的列:

pure water
wood fire
mineral water
water
fire work

b有一列称为“类型”:

water
fire

许多R函数需要输入文本才能匹配grep('fire',a),但是我的问题是是否有一种使用b来匹配a的方法? 我尝试循环但失败了。 以下SQLDF获得了所有错误的匹配结果。

ab <- sqldf(select *,case when detail in (select distinct types from b) then 1 else 0 end as match) from a)

理想情况下,可以使用c <- grep(a$detail,b$types) 不知道在R中是否允许。

提前致谢!

创建一个typea ,然后在其合并:

merge(transform(a, type = sub(".* ", "", a$detail)), b, all = TRUE)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM