Нахождение нечеткого среднего отношения определенных слов в текстовом файле

Я пытаюсь найти нечеткое соотношение между определенными словами в текстовом файле и получить его среднее значение.

Я написал код, который найдет нечеткое соотношение всех строк в текстовом файле с "привет", но не определенными словами. Я хотел найти нечеткое отношение только между определенными словами, которые представлены ниже в форме регулярных выражений.

Моя кодировка:

s1='hello'
def good_ratio(a):
    return fuzz.token_set_ratio(a, s1)
with open(dir_entry_path, 'r') as my_file:
     try:
         my_sum, my_len = reduce(lambda a, b: (a[0]+b[0], a[1]+b[1]), ((good_ratio(i), 1) for i in my_file))
     except TypeError:  # file empty, move to next file

          continue
     fuzzinessav=(my_sum/my_len)

Предположим, что мой файл содержит определенные слова, которые можно получить с помощью шаблонов regex: regex для получения конкретных слов из моего файла:

r'(?:see[.](\w+))'     when lines with :  see.me  ->takes 'me' 
r'(?:here (\w+))'      when lines with :  here we ->takes 'we'

текстовый файл:

Hello how are you!
did you see.him
of course he was here with me
ok then bye

Мой код находит нечеткие соотношения с каждой строкой, а затем находит нечеткое соотношение каждой строки, а затем принимает среднее значение.

Но мне нужно было таким образом, чтобы определенные слова из шаблонов регулярных выражений создавались отдельно, чтобы найти нечеткое соотношение, а не всю строку. Вот некоторые слова: him , withЗатем мне нужно найти среднее значение нечеткого отношения.

Помогите, пожалуйста, добавить шаблоны регулярных выражений и найти нечеткое соотношение определенных слов, а не всех строк.

0 ответов

Другие вопросы по тегам