小编Gab*_*gel的帖子

获取两个列表之间最接近的字符串匹配

我是 R 的真正初学者,我只有这两个列表,其中包含城市名称。一个列表包含用户生成的名称(人们拼写混乱),另一个列表包含名称的正字法。

我尝试使用包stringdist,最终得到了一个循环 (for) 并给出最接近匹配的代码。但我只能输入向量,而且我确实需要使用数据框。

这是我的代码(天哪,感觉很尴尬):

 input <- "BAC"   #misspelled 
  correct <- c("ABC", "DEF", "GHI", "JKL") #list with all correct names
  shortest <- -1a

for (word in correct) {

  dist <- stringdist(input, word)
  #checks if it's a match!
  if (dist == 0){
    closest <- palavra
    shortest <- 0

    break

  }

  if(dist <= shortest || shortest < 0){
    closest <- word
    shortest <- dist

  }

}


if(shortest == 0){ 
  print("It's a match!")
} else {
  print(closest)
}
Run Code Online (Sandbox Code Playgroud)

想法是使用这段代码来产生一个想法,我想从这里开始在数据帧的每一行中使用 …

spell-checking r dataframe stringdist

3
推荐指数
1
解决办法
1561
查看次数

标签 统计

dataframe ×1

r ×1

spell-checking ×1

stringdist ×1