提问人:Mimi Guo 提问时间:4/13/2023 最后编辑:jpsmithMimi Guo 更新时间:4/13/2023 访问量:99
R 中的模糊匹配玩家名称
Fuzzy Matching player names in R
问:
在 R 中,我有两个数据帧,一个带有全名,一个带有缩写名称,我想 dplyr 将它们连接起来,看看哪个有标志。
但是,很难获得匹配的名字,即使我匹配姓氏,也有相同的姓氏。我在下面给出部分数据作为示例。无论如何,我是否可以高效、正确地连接这两个数据帧而不会出现任何不匹配?
data_1喜欢:
选手 | 旗 |
---|---|
W·福法纳 | 1 |
恩戈洛·坎特 | 1 |
弗兰克·安吉萨 | 1 |
data_2喜欢:
选手 |
---|
大卫·达特罗·福法纳 |
韦斯利·福法纳 |
恩戈洛·坎特 |
安德烈-弗兰克·赞博·安吉萨 |
我尝试了姓氏匹配:
data_1 <- data_1 %>%
mutate(player = sub('.*\\s', '', player))
data_2 <- data_2 %>%
mutate(player = sub('.*\\s', '', player))
这可以将“Andre-Frank Zambo Anguissa”与“Frank Anguissa”匹配,但会与 W. Fofana 和 David Datro Fofana 不匹配。
但是,如果我考虑名字,我不知道如何保持“Andre-Frank Zambo Anguissa”和“Frank Anguissa”等情况的匹配。由于这是一个非常独特的姓氏,通过匹配姓氏,我实际上可以得到正确的匹配,如果涉及名字,我认为它不会起作用。有什么建议吗?多谢
我也试过了,但很难选择允许所有正确匹配/加入的。fuzzyjoin
max_dist
答: 暂无答案
评论
left_join