Py之distance:distance的简介、安装、使用方法之详细攻略

Py之distance:distance的简介、安装、使用方法之详细攻略

目录

distance的简介

distance的安装

distance的使用方法

1、编辑距离、汉明距离、sorensen相似系数、jaccard系数、ifast_comp


distance的简介

        这个包为计算任意序列之间的相似性提供了帮助。包括Levenshtein、Hamming、Jaccard和Sorensen distance,以及一些bonuses。所有的距离计算都是用纯Python实现的,而且大多数都是用C语言实现的。

distance的安装

pip install distance

distance的使用方法

1、编辑距离、汉明距离、sorensen相似系数、jaccard系数、ifast_comp


import distance


#T1、编辑距离
levenshtein_res01=distance.levenshtein("lenvestein", "levenshtein")

#如果您的语言中的声音和字形之间没有一对一的映射,或者如果您想比较的不是字形,而是音节或音素,则可以传入字符元组:
#比较字符串列表对于计算句子、段落等之间的相似性也很有用:
sent1 = ['the', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']
sent2 = ['the', 'lazy', 'fox', 'jumps', 'over', 'the', 'crazy', 'dog']
levenshtein_res02=distance.levenshtein(sent1, sent2)

levenshtein_res03=distance.nlevenshtein("abc", "acd", method=1)  # shortest alignment
levenshtein_res04=distance.nlevenshtein("abc", "acd", method=2)  # longest alignment

print(levenshtein_res01,levenshtein_res02,levenshtein_res03,levenshtein_res04)


#T2、汉明距离
'''
Hamming距离和Levenshtein距离可以被标准化,这样就可以有意义地比较几种距离测量的结果。
Levenshtein有两种策略:要么以序列间最短比对的长度作为因子,要么以较长比对的长度作为因子。
'''
hamming_res01=distance.hamming("hamming", "hamning")
hamming_res02=distance.hamming("fat", "cat", normalized=True)

print(hamming_res01,hamming_res02)


#T3、sorensen相似系数
sorensen_res=distance.sorensen("decide", "resize")
print(sorensen_res)

#T4、jaccard系数
jaccard_res=distance.jaccard("decide", "resize")
print(jaccard_res)

#T5、ifast_comp
'''
ifast_comp的效率特别高,可以处理100万个tokens而没有问题
两个方便的迭代器ilevenshtein和ifast_comp,用于从一长串序列中筛选接近参考序列的序列。它们都返回一系列元组(距离、序列)。
'''
tokens = ["fo", "bar", "foob", "foo", "fooba", "foobar"]
sorted(distance.ifast_comp("foo", tokens))

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个处女座的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值