因此,我在R中遇到了一个小错误/特性,当在参数中使用时,agrep函数不接受"|“字符作为有效的正则表达式逻辑(others have had this problem too)。
我正在尝试对一个字符向量(ListofUniqueNames)中的30个不同的、相对唯一的名称与数据框列(MasterList$ names )中超过380,000个不同名称的列表进行模糊匹配,并获得所有匹配名称的输出。通过使用grep,我可以很好地完成精确匹配
grep(paste(ListofUniqueNames,collapse="|"),MasterList$Names, value=TRUE, ignore.case = TRUE)然而,由于上面列出的问题,这种方法不适用于agrep。如果没有模糊匹配,我如何才能完成相同的任务?
发布于 2017-10-07 07:12:53
您可以为每个模式逐个调用agrep,然后组合结果:
unlist(lapply(ListofUniqueNames, function(x) agrep(x, MasterList$Names, value=T, ignore.case = TRUE)))https://stackoverflow.com/questions/46615005
复制相似问题