栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Python中将Levenshtein距离大于80%的单词分组

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Python中将Levenshtein距离大于80%的单词分组

这将名称分组

from fuzzywuzzy import fuzzcombined_list = ['rakesh', 'zakesh', 'bikash', 'zikash', 'goldman LLC', 'oldman LLC']combined_list.append('bakesh')print('input names:', combined_list)grs = list() # groups of names with distance > 80for name in combined_list:    for g in grs:        if all(fuzz.ratio(name, w) > 80 for w in g): g.append(name) break    else:        grs.append([name, ])print('output groups:', grs)outlist = [el for g in grs for el in g]print('output list:', outlist)

生产

input names: ['rakesh', 'zakesh', 'bikash', 'zikash', 'goldman LLC', 'oldman LLC', 'bakesh']output groups: [['rakesh', 'zakesh', 'bakesh'], ['bikash', 'zikash'], ['goldman LLC', 'oldman LLC']]output list: ['rakesh', 'zakesh', 'bakesh', 'bikash', 'zikash', 'goldman LLC', 'oldman LLC']

如您所见,名称已正确分组,但顺序可能不是您想要的。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/611883.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号