在levenshtein距离/模糊得分上找到相似的词

时间:2019-07-24 01:35:14

标签: pandas spell-checking levenshtein-distance

我正在尝试清理从网站上删除的搜索字词。由于搜索字词来自电子商务网站,因此无法使用PYspellchecker进行更正。 经过研究,我知道我们可以使用levenshtein距离,但是我不知道如何在单个列上实现它。我有30万个搜索词,唯一可能的方法是使用df的转置。但这不起作用,因为我正在获得内存错误。

from pandas import DataFrame

Cars = {'Words': ['Walmart','Walnart','Audi','Aoudi','udi','Falmart','Audi A4'],
        'count': [22000,300,27000,300,50,300,3000]
        }

df = DataFrame(Cars,columns= ['Words', 'count'])

字数 沃尔玛22000 瓦尔纳特300 奥迪27000 奥迪300 迪50 法尔玛300 奥迪A4 3000

我想要下面的结果

Words   Similar_word    Score
Walmart Walmart 100
Walnart Walmart 90
Audi    Audi    100
Aoudi   Audi    90
udi Audi    85
Falmart Walmart 85
Audi A4 Audi A4 100

我的逻辑无法将沃尔玛与奥迪相提并论。其次,奥迪A4相距3个levenshtein距离,因此将其单独处理。

0 个答案:

没有答案