比较字符串和senten时,fuzzyfuzzy输出很奇怪

2024-09-30 06:16:56 发布

您现在位置:Python中文网/ 问答频道 /正文

使用模糊模糊库获取字符串和句子之间的相似性分数

下面是代码的一小段

data = pd.read_csv("abc.csv",encoding ='latin1') 
df = data.main_hotel_name.str.lower().tolist()
ds = [str(x) for x in df]
process.extract("radisson",ds,
scorer=fuzz.partial_ratio,limit=10)

输出:

[('country inn&;美国北卡罗来纳州阿什维尔市阿什维尔西门雷迪森套房酒店,100), ('country inn&;德里丽笙套房酒店,新德里萨凯特,印度,100), ('country inn&;美国伊利诺伊州埃芬厄姆市埃芬厄姆雷迪森套房酒店,100), ('country inn&;radisson套房,霍夫曼庄园,美国伊尔霍夫曼庄园,100), ('country inn&;radisson套房酒店,德克萨斯州圣安东尼奥市拉克兰空军基地(圣安东尼奥),美利坚合众国圣安东尼奥,100), ('country inn&;美国米沙瓦卡米沙瓦卡radisson套房酒店,100), ('country inn&;美国诺曼诺曼雷迪森套房酒店

虽然上述输出是准确的,但是如果我在查询中更改一个字母,结果将完全不同:

例如:

# Removing just an "s" from the query:

process.extract("radison",ds,
scorer=fuzz.partial_ratio,limit=10)

输出:

[('6bd著名豪华设计奖授予瑞士外孙枫丹别墅',86年), ('ac hotel by marriott madison闹市区美国麦迪逊酒店',86年), ('paradiso mar azul阿根廷公寓',86年), ('Apartmento cadiz paradiso cadiz spain',86), ('paradiso nessebar保加利亚公寓酒店',86年), ('86年印度尼西亚雅加达市中心公园附近麦迪逊公寓'

这两种输出之间的差异是巨大的,我是否以错误的方式使用了模糊模组


Tags: csvdfdatads酒店processcountryhotel

热门问题