我正在尝试使用文本字符串向量$contractor
和$employer
来识别两个数据集之间匹配的观察结果,并针对承包商是否在雇主列表中创建TRUE / FALSE指标。
library(caTools)
list<-data.frame(ID=c(1:6),
employer=c("a.c. construction","abc concrete company","xyz pool construction inc","frank studebager llc","annoying contractors llc","beaumont ditch digging co inc"))
jobs<-data.frame(contractor=c("a-c construction","hank hill construction","xyz pool const incorporated","frank studebaer co","hank hill const"),
value=c(400000,284590,410280,310980))
jobs$match<-pmatch(jobs$contractor,list$employer,duplicates.ok=TRUE)
pmatch命令说有0个匹配项,但这是因为公司名称输入错误并且拼写不一致。显然有比赛。我还使用了模糊匹配命令agrepl,但是在我的实际数据中,匹配的数量和质量在可接受的Levenshtein距离略有变化的情况下发生了难以置信的变化。