У меня есть файл .txt, который включает в себя множество твитов и обзоров, из них около 1 ГБ (я думаю, это много, потому что это всего лишь текст)
Я хочу прочитать файл, лемматизировать каждую строку и если есть какой-то шаблон, я хочу извлечь его в список.
pattern = "I like (\w+)"
list_patterns =[]
for line in open(text):
tagged = pos_tag(line.split())
lemmatized_sentence = []
for token, pos in tagged:
pos_first = pos[0].lower()
if pos_first in 'n v'.split():
lemma=lemmatizer.lemmatize(token, pos_first)
else:
lemma=token
lemmatized_sentence.append(lemma)
clean_sentence = ' '.join(lemmatized_sentence)
list_patterns.extend(re.findall(pattern, clean_sentence))
Дело в том, что этот код очень трудоемкий для запуска, и я не уверен, что есть какие-то проблемы с ним, или, если нет, если есть какой-то способ улучшить его, чтобы он мог работать быстрее, потому что простой запуск этого кода (без очистки текста) занимает около 10 секунд:
list_pattern =[]
for line in open(text):
list_pattern.extend(re.findall(pattern, line))