Лемматизация

1) pymystem3 (библиотека, разработанная сотрудниками Яндекса)

from pymystem3 import Mystem

name = Mystem()
test_name = list(df['text_col'])        

а) some_words_or_text = '...' created_lemmas = name.lemmatize(some_words_or_tex) print(created_lemmas)

б)created_lemmas = ' '.join(name.lemmatize(some_words_or_text)) print(created_lemmas) склеивает

в) from collections import Counter print(Counter(created_lemmas)) сколько раз употребляется каждое слово

г)функция  принимает текст и возвращает лемматизированную строку:

def lemmatize_function(text):
    lemm = Mystem().lemmatize(text)
    return ''.join(lemm)

д) модуль re для работы с регулярным выражениями, функция замены, субституции re.sub() по шаблону совпадения и заменяет их нужной строкой

import re

re.sub(pattern, replacement, text)

(в скобках указаны шаблон для поиска pattern, строка для замены replacement, сам текст)

е)функция оставляет в тексте только кириллические символы и пробелы

def only_kirillic_and_spaces_function (text):
    text = re.sub(r'[^а-яА-ЯёЁ ]', ' ', text)
   
    return  " ".join(text.split())

Чтобы вывести результат (д) и (е)

print("Лемматизированный текст, только кириллические символы и проблеы:", lemmatize_function(only_kirillic_and_spaces_function(text_name[0])))

2) pymorphy2

https://python-school.ru/nlp-text-preprocessing/ (для морфологического анализа русского и украинского языков)

 

Язык и производные:

Команды: