gpt4 book ai didi

python - 多个值python的字符串比较

转载 作者:太空狗 更新时间:2023-10-30 01:05:14 25 4
gpt4 key购买 nike

我有一组数据。第一个 (A) 是具有复杂名称的设备列表。第二个是更广泛的设备类别列表 (B) - 我必须使用字符串比较将第一个列表分组。我知道这并不完美。

对于列表 A 中的每个实体 - 我想为列表 B 中的每个实体建立编辑距离。列表 B 中得分最高的记录将是我将分配该数据点的组。

我对 python 很生疏 - 我正在使用 FuzzyWuzzy 来获取两个字符串值之间的距离。但是 - 我不太清楚如何遍历每个列表来生成我需要的东西。

我假设我只是为每个数据集创建一个列表并为每个数据集编写一个非常基本的循环 - 但就像我说的那样我有点生疏而且没有任何运气。

任何帮助将不胜感激!如果有另一个包可以让我这样做(不是 Fuzzy)——我很乐意接受建议。

最佳答案

它看起来像 process.extractOne功能是你要找的。一个简单的用例就像

from fuzzywuzzy import process
from collections import defaultdict

complicated_names = ['leather couch', 'left-handed screwdriver', 'tomato peeler']
generic_names = ['couch', 'screwdriver', 'peeler']

group = defaultdict(list)

for name in complicated_names:
group[process.extractOne(name, generic_names)[0]].append(name)

defaultdict是一个字典,所有键都有默认值。

我们遍历所有复杂的名称,使用 fuzzywuzzy 找到最接近的匹配项,然后将名称添加到与该匹配项关联的 list 中。

关于python - 多个值python的字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46576576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com