有了此代码,我希望两个数字列表之间保持levenshtein距离。
import textdistance
S1=[1,2,3,7,9,15,19,20]
S2=[1,2,3,7,8,14,20]
#convert lists to string
Str1=‘’.join(str(e) for e in S1)
Str2=‘’.join(str(e) for e in S2)
textdistance.levenshtein.similarity(Str1,Str2)
textdistance.levenshtein.distance(Str1,Str2)
上面的代码相似度为:7 哪个错,正确的是5。 并显示距离值为4,这也是错误的,正确的距离为3。
如何操作代码,以便将14和15这样的数字视为上述函数的一个元素?任何想法..
答案 0 :(得分:1)
请勿转换为字符串,只需保留代码即可:
S1=[1,2,3,7,9,15,19,20]
S2=[1,2,3,7,8,14,20]
Textdistnace.levenshtein.similarity(S1,S2)
Textdistance.levenshtein.distance(S1,S2)
答案 1 :(得分:-1)
尝试像这样使用水母库:
import jellyfish
S1=[1,2,3,7,9,15,19,20]
S2=[1,2,3,7,8,14,20]
#convert lists to string
Str1=‘’.join(str(e) for e in S1)
Str2=‘’.join(str(e) for e in S2)
jellyfish.levenshtein_distance(Str1, Str2)
您可以在此处找到有关此信息的更多信息:https://pypi.org/project/jellyfish/