Levenshtein 距离
1、概念
Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。(即:插入、删除、替换)。
相似度 ,其中Distance指编辑距离,max是指两个字符串的长度总和。
2、python实现
安装包:
pip install python-Levenshtein -i https://pypi.tuna.tsinghua.edu.cn/simple
举例:
import Levenshtein
str1 = 'Angel'
str2 = 'Angle'
distance = Levenshtein.distance(str1,str2) # distance指编辑距离
p = 1 - distance/(len(str1 )+len(str2 ))
print(distance)
print(p)
执行上述结果,输出2和0.8。
计算相似度也可以用 莱特斯坦比:Levenshtein.ratio(str1, str2)。同样输出0.8。