Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python模糊模糊匹配-排除术语_Python_Pandas_Fuzzywuzzy - Fatal编程技术网

python模糊模糊匹配-排除术语

python模糊模糊匹配-排除术语,python,pandas,fuzzywuzzy,Python,Pandas,Fuzzywuzzy,我是python新手,一直在使用FuzzyFuzzy进行模糊匹配,并取得了成功。然而,我想知道是否有办法从算法中排除术语?通用术语通常可以与大量选项匹配,我想防止算法在不进行大量预处理的情况下匹配这些术语。我似乎找不到任何示例/文档。您可以使用内置的difflib来实现这一点 import difflib search_list = ['ape', 'apple', 'peach', 'puppy'] matches = difflib.get_close_matches('appel', po

我是python新手,一直在使用FuzzyFuzzy进行模糊匹配,并取得了成功。然而,我想知道是否有办法从算法中排除术语?通用术语通常可以与大量选项匹配,我想防止算法在不进行大量预处理的情况下匹配这些术语。我似乎找不到任何示例/文档。

您可以使用内置的difflib来实现这一点

import difflib
search_list = ['ape', 'apple', 'peach', 'puppy']
matches = difflib.get_close_matches('appel', possibilities=search_list, cutoff=0.6)

print(matches)
['apple', 'ape']

exclude_list = ['ape']

matches_with_exclusion = [x for x in matches if x not in exclude_list]
print(matches_with_exclusion) 
['apple']

这在某种程度上是有帮助的,但我正试图最大限度地利用模糊wuzzy包/Levenshtein距离方法。希望包中有排除术语的功能,看看是否有人知道。FWIW,我查看了FW源代码,没有看到任何您想要的排除类型功能。你能在我的回答中使用列表理解方法删除不需要的FW返回结果吗?