Список словосочетаний для текстового файла

Я хочу перечислить словосочетания, о которых сообщает NLTK для Dracula.txt. Как мне это сделать? Я могу найти частоту слов, добавив ее в мой корпус. У меня тоже есть переменная DracWords dracWords = mycorpus.words('Dracula.txt') в котором есть слова из текста Дракулы. Из этого я могу сделать распределение частот, но сейчас я хочу перечислить коллокации из него.

Любая помощь приветствуется.

2 ответа

Решение

Спасибо всем. смог получить его с

nltk.Text(mycorpus.words('Dracula.txt')).collocations()

Вы можете попробовать это:

from collections import Counter

text = 'List the collocations for a txt file'
words = text.split()
nextword = iter(words)
next(nextword)

print(Counter(zip(words, nextword)))

И вы получите:

Counter({('txt', 'file'): 1, ('List', 'the'): 1, ('collocations', 'for'): 1, ('for', 'a'): 1, ('the', 'collocations'): 1, ('a', 'txt'): 1})

Надеюсь это поможет.

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