Py之distance:distance的简介、安装、使用方法之详细攻略-阿里云开发者社区

开发者社区> 一个处女座的程序猿> 正文

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

简介: Py之distance:distance的简介、安装、使用方法之详细攻略
+关注继续查看

distance的简介


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





distance的安装


pip install distance

image.png






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))



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Py之turicreate:turicreate的简介、安装、使用方法之详细攻略
Py之turicreate:turicreate的简介、安装、使用方法之详细攻略
58 0
Py之ipython:Python库之ipython的简介、安装、使用方法详细攻略
Py之ipython:Python库之ipython的简介、安装、使用方法详细攻略
33 0
Py之terminaltables:terminaltables的简介、安装、使用方法之详细攻略
Py之terminaltables:terminaltables的简介、安装、使用方法之详细攻略
30 0
使用 PyCharm 添加 Django 项目
一、前置准备(PyCharm与Python的下载,已有的跳过)   1.首先下载PyCharm 地址:http://www.jetbrains.com/pycharm/   2.然后下载Python 地址:https://www.
1141 0
Py之mpld3:mpld3的简介、安装、使用方法之详细攻略
Py之mpld3:mpld3的简介、安装、使用方法之详细攻略
34 0
IntelliJ IDEA CE Maven 使用方法
我们在使用 IntelliJ IDEA CE 版本时,明明创建的是一个 Maven 项目,但是在项目上点击鼠标右键时会发现,Run Maven Build 菜单是灰的,不能用! 如下图: 有的文章说是 Idea 对 Maven 支持的不好(真是不懂 Idea),给出的解决方法是:Run 运行 》Edit Configurations 编辑配置 然后通过点击左上角的加号,添加一个 Maven 的配置项,Command line (命令行)中输入对应的参数: 这样,在下图的位置我们会看到多了一个 package ,这个名称是刚刚添加配置的时候输入的。
764 0
Dataset之babyboom.dat:babyboom.dat数据集的简介、安装、使用方法之详细攻略
Dataset之babyboom.dat:babyboom.dat数据集的简介、安装、使用方法之详细攻略
24 0
WSL:WSL(Windows Subsystem for Linux)的简介、安装、使用方法之详细攻略
WSL:WSL(Windows Subsystem for Linux)的简介、安装、使用方法之详细攻略
22 0
+关注
一个处女座的程序猿
国内互联网圈知名博主、人工智能领域优秀创作者,全球最大中文IT社区博客专家、CSDN开发者联盟生态成员、中国开源社区专家、华为云社区专家、51CTO社区专家、Python社区专家等,曾受邀采访和评审十多次。仅在国内的CSDN平台,博客文章浏览量超过2500万,拥有超过57万的粉丝。
1701
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载