Untitled
unknown
python
a year ago
3.5 kB
7
Indexable
import pandas as pd try: data = pd.read_csv('toxic_comments.csv') except: data = pd.read_csv('/datasets/toxic_comments.csv') data # ------------------------------------------------------ # ДЛЯ РУССКОГО ЯЗЫКА import pymorphy2 # Создаем объект MorphAnalyzer morph = pymorphy2.MorphAnalyzer() # Функция для лемматизации строки def lemmatize_text(text): words = text.split() lemmatized_words = [morph.parse(word)[0].normal_form for word in words] lemmatized_text = ' '.join(lemmatized_words) return lemmatized_text kol1 = 200000 # Применяем функцию к столбцу 'твиты' df = pd.DataFrame() %%time df['лемматизированные_твиты'] = data['text']. iloc[:kol1].apply(lemmatize_text) # Вывод # CPU times: total: 1min 38s # Wall time: 1min 38s # Вывод результата df. shape # Вывод # (159292, 1) # ------------------------------------------------------ # ДЛЯ АНГЛИЙСКОГО ЯЗЫКА from nltk.stem import WordNetLemmatizer from nltk.tokenize import word_tokenize import nltk nltk.download('punkt') # Если не установлено # Создаем объект WordNetLemmatizer lemmatizer = WordNetLemmatizer() # Функция для лемматизации строки def lemmatize_english_text(text): words = word_tokenize(text) lemmatized_words = [lemmatizer.lemmatize(word) for word in words] lemmatized_text = ' '.join(lemmatized_words) return lemmatized_text kol2 = 10 # Применяем функцию к столбцу 'твиты' df = pd.DataFrame() %%time df['лемматизированные_твиты'] = data['text']. iloc[:kol2].apply(lemmatize_english_text) print('Почему то первый запуск дал расчет в 100 раз дольше, возможно при перезапуске ядра стоит\n'+ 'сначала лемматизировать пару строк, а потом запускать весь датасет') # Вывод # Почему то первый запуск дал расчет в 100 раз дольше, возможно при перезапуске ядра стоит # сначала лемматизировать пару строк, а потом запускать весь датасет # CPU times: total: 672 ms # Wall time: 670 ms kol2 = 200000 # Применяем функцию к столбцу 'твиты' df = pd.DataFrame() %%time df['лемматизированные_твиты'] = data['text']. iloc[:kol2].apply(lemmatize_english_text) print('Почему то первый запуск дал расчет в 100 раз дольше, возможно при перезапуске ядра стоит\n'+ 'сначала лемматизировать пару строк, а потом запускать весь датасет') # Вывод # Почему то первый запуск дал расчет в 100 раз дольше, возможно при перезапуске ядра стоит # сначала лемматизировать пару строк, а потом запускать весь датасет # CPU times: total: 1min 6s # Wall time: 1min 6s # Вывод результата df. shape # Вывод # (159292, 1)
Editor is loading...
Leave a Comment