python - 模糊匹配,循环遍历数据集以查找引用集中的相应项

时间:2018-05-05 00:50:38

标签: python fuzzy-comparison fuzzywuzzy

我正在尝试在python中学习和实现模糊匹配。我有两个数据集,我作为数据框加载到pandas中。集合1是参考集。 Set 2是包含与引用名称匹配的数据的集合。

我遍历set_1项目以搜索引用中的相应条目,但是我收到错误。我需要一些错误的帮助。 我试图以一种好的方式构建算法吗?

我的尝试:

AttributeError: module 'fuzzywuzzy' has no attribute 'extractOne'

我收到以下错误:

/^[a-zA-Z0-9,.!?\-\+:;() ]*$/

1 个答案:

答案 0 :(得分:2)

如果你看一下github上的软件包usage,你会发现extractOnefuzzywuzzy.process中定义的函数,所以你&#39 ; ll需要像这样导入该子模块:

import pandas as pd
from fuzzywuzzy import process  # <-- note the difference
from difflib import SequenceMatcher

set_1 = pd.read_csv("C:/Folder/file_1.csv")
set_2 = pd.read_csv("C:/Folder/file_2.csv")

query = set_1['name']
choices = set_2['name2']

for query in query:
    #       vvvvvvv  note the difference
    match = process.extractOne(query,choises=choises,scorer=scorer,score_cutoff=cutoff)