我正在尝试计算匹配/模糊匹配第一个字符串列到数据框中第二个字符串列的所有组合
例如:
string1 =“美国加拿大英国澳大利亚日本印度”
string2 =“USA Canada India UK Australia China Brazil France”
预期结果
单字匹配计数= 5(美国加拿大英国澳大利亚印度)匹配
两个单词匹配计数= 2(美国加拿大,英国澳大利亚)连续的单词匹配
三个字匹配计数= 0
四字匹配计数= 0
五个字匹配计数= 0
六字匹配计数= 0
总计= 5 + 2 = 7
感谢您的时间,非常有人可以帮助编写此功能或指向我使用任何现有的包
答案 0 :(得分:0)
这段代码可以解决问题:
string1 <- "USA Canada UK Australia Japan India"
string2 <- "USA Canada India UK Australia China Brazil France"
str1 <- unlist(strsplit(string1, " "))
library(ngram)
for(i in 1:length(str1)){
ng1 <- ngram_asweka(string1, min = i, max = i, sep = " ")
ng2 <- ngram_asweka(string2, min = i, max = i, sep = " ")
print(paste(i, "word match count", length(which(ng1 %in% ng2)), sep=" "))
}