如何解决在 agrep() 之外改进 R 中的模糊匹配
我需要通过将名称略有不同的重复客户分组来减少大量客户。我在 this post 的帮助下开始了我的模糊匹配解决方案。
我修改了代码以创建一个有用的数据框,其中一列包含客户,另一列显示所有匹配的客户。
list <- sapply(customer_data$End_Customer,agrep,customer_data$End_Customer,ignore.case = TRUE,value = TRUE,max.distance = 0.01)
result <- data.frame(stack(list))
register("result")
## filter and sort the dataset
result <- result %>%
filter(values != ind) %>%
arrange(desc(values)) %>%
select(values:ind)
既然我有了这个数据集,我该如何将它们归为一个客户?我可以将所有匹配的客户分组,但单独的 agrep() 并不完美,一些“匹配”的客户实际上并不匹配。例如,客户“WAE”与大约 600 个客户相匹配。我不希望 WAE 被归入所有 600 个客户。我只希望 WAE 匹配最适合的一位客户。
我读过 Rosette Text Analytics,它使用了一种结合了多种不同技术的混合方法。是否有其他 R 包可以与 agrep() 结合使用来改进我的模糊匹配?
在创建这篇文章时,我开始研究fuzzyjoin(),所以也许这是一种可能性。非常感谢任何人的专家建议。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。