Я пытаюсь понять, как выбрать «наиболее вероятное» значение из 5 записей. Я думаю, что пакет fuzzywuzzy
может работать, но интересно, может ли этот пакет работать, даже если строка поиска не указана.
Я пробовал регулярные выражения, но не думаю, что это работает вообще, затем наткнулся на этот fuzzywuzzy
код:
https://www.datacamp.com/community/tutorials/fuzzy-string-python
from fuzzywuzzy import process
str2Match = "apple inc"
strOptions = ["Apple Inc.","apple park","apple incorporated","iphone"]
Ratios = process.extract(str2Match,strOptions)
# You can also select the string with the highest matching percentage
highest = process.extractOne(str2Match,strOptions)
Результаты:
>> print (Ratios)
[('Apple Inc.', 100), ('apple incorporated', 90), ('apple park', 67), ('iphone', 30)]
>> print(highest)
('Apple Inc.', 100)
Приведенные выше результаты имеют смысл, так как имеется поставляемая строка поиска str2Match
, но мне интересно, возможно ли, чтобы код автоматически генерировал, какое должно быть наилучшее (наибольшее) значение (например, автоматическое генерирование некоторого значения, когда он понимает, 'Apple Inc'
и 'apple incorporated'
достаточно похожи? спасибо