首页 > 解决方案 > 为相似文本找到最佳匹配并仅保留唯一值

问题描述

我有一个我试图清理的项目名称列表,但它们包含具有轻微不匹配的重复项。我想找到他们最近的匹配并用这个匹配替换所有匹配项。

我正在使用 Python 和 Pandas 并导入了一个文件,该文件有一列嵌入了项目名称。我做了一些清理并删除了额外的字符来提取项目名称。但有些名称出现了轻微的不匹配。我 difflib 找到最接近的匹配,但它返回两个值,最好的匹配是它本身。

      Project Name  
552   Hilton International
553   Hilton International A

key = df2.iloc[552:553]['Project Name'].tolist()
key = key[0]
difflib.get_close_matches(key, df2['Project Name'].tolist())

预期结果:

      Project Name  
552   Hilton International
553   Hilton International

标签: pythonalgorithmsortingduplicates

解决方案


推荐阅读