Я выполняю некоторые НЛП для набора данных и пытаюсь удалить стоп-слова.
Я не использую встроенные стоп-слова nltk, и я использую собственный список стоп-слов (который составляет около 10 тыс. Слов в разныхязыки)
Сначала я определил приведенную ниже функцию
def clean_text(text):
text = ''.join([word.lower() for word in text if word not in string.punctuation])
tokens = re.split('\W+', text)
text = [lm.lemmatize(word) for word in tokens if word not in stopwords]
return text
, затем применил ее к кадру данных следующим образом:
df_train['clean_text'] = df_train['question_text'].apply(lambda x: clean_text(x))
Моя проблема заключается в том, чтодолго обрабатывать, так есть ли более быстрый способ сделать это?