用r匹配相似的字符串

时间:2018-06-21 09:25:20

标签: r fuzzy-comparison

我需要在两个不同的数据集中匹配名称。这些公司名称可以部分不同,并且在两个数据集中都不唯一:它们可以重复很多次。

尽管其中一些名称可能在两个数据集中重合,但我想比较所有相似的名称,然后选择完全匹配。

我尝试使用pmatch,但是返回的结果很奇怪。与agrep相同,这使我全都NA。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您能举个例子吗?我没有示例数据的最佳猜测是使用grepl():

bad.names <- rep(c('tom','tommy','tommy-boy','john','johnny','johnny-o'),10)

print(table(bad.names))
bad.names
     john    johnny  johnny-o       tom     tommy tommy-boy 
       10        10        10        10        10        10 

new.names <- ifelse(grepl('t', bad.names), 'tommy','johnny')

print(table(new.names))
new.names
johnny  tommy 
    30     30