Я получаю результат в fuzzywuzzy, который не работает так, как я надеялся. Если в середине есть лишнее слово из-за разницы Левенштейна, оценка ниже.
Пример:
from fuzzywuzzy import fuzz
score = fuzz.ratio('DANIEL CARTWRIGHT', 'DANIEL WILLIAM CARTWRIGHT')
print(score)
score = fuzz.ratio('DANIEL CARTWRIGHT', 'DAVID CARTWRIGHT')
print(score)
score = fuzz.partial_ratio('DANIEL CARTWRIGHT', 'DANIEL WILLIAM CARTWRIGHT')
print(score)
score = fuzz.partial_ratio('DANIEL CARTWRIGHT', 'DAVID CARTWRIGHT')
print(score)
результаты: 81 85 71 81
Я ищу, чтобы первая пара (Дэниел против Дэниела Уильяма) была лучше, чем вторая пара (Дэниел против Дэвида).
Есть ли лучший подход, чем fuzzywuzzy, для использования здесь?