This is hard code for calculating minimum edit distance between 2 words by Levenshtein method in Python. You can write more userfriendly code by Numpy package.

 

word1 = str("$#"+input('Please insert first word: '))
word2 = str("#"+input('Please insert second word: '))
#------------------------------------------------------
def Min(a,b,c):
    result =a
    if(b<a):
        result =b
    elif(c<b):
        result = c
    elif(c<a):
        result=c
    
    return result
#------------------------------------------------------           
def Define():
    
    resultList=[]
    resultList.append(list(word1))
    for i in range(0,len(word2)):
        resultList.append(list(word2[i]+("0"*(len(word1)-1))))
        
    return resultList
#------------------------------------------------------
def Initial():
    
    resultList = Define()
    for i in range(1,len(word1)):
        resultList[1][i]=i-1
    for j in range(0,len(word2)):
        resultList[j+1][1]=j
        
    return resultList
#------------------------------------------------------
def Calculate():
    resultList = Initial()
    for y in range(2,len(resultList[0])):
         for x in range(2,len(resultList)):
                if(resultList[x][0]==resultList[0][y]):
                    resultList[x][y]=int(resultList[x-1][y-1])
                else:
                    resultList[x][y]=Min(int(resultList[x-1][y-1])+2,
                                            int(resultList[x-1][y])+1,
                                            int(resultList[x][y-1])+1)
                    
    
    return resultList
#------------------------------------------------------
levenshteinMatrix = Calculate() 
for item in levenshteinMatrix:
        print(item)
        
print("Minimum Edit Distance is {0}".format(levenstienMatrix[-1][-1]))
 

Minimum Edit Distance-Levenshtein Method in Python

  ,please ,insert ,by ,b ,word ,input please ,str input ,please insert ,word2 str ,insert second ,input please insert

مشخصات

تبلیغات

آخرین مطالب این وبلاگ

آخرین ارسال ها

برترین جستجو ها

آخرین جستجو ها

نمایندگی فرامید 02133288705 02133288706 انتخاب هدف در زندگی دانلود آهنگ جدید ایرانی راهنمای نصب اسنپ و رفع مشکلات اپلیکیشن اسنپ در اندروید و iOS طراحی سایت ، سئو ،تبلیغات در گوگل راه های پیشگیری از کرونا سلامت، پزشکی و تجهیزات پزشکی اموزشی کتابخانه شهدا گرمه وبلاگ نشریه دردانشکده