Это вопрос с новичком на Python и NLTK.
Я хочу найти частоту биграмм, которые встречаются более 10 раз вместе и имеют самый высокий PMI.
Для этого я работаю с этим кодом
def get_list_phrases(text):
tweet_phrases = []
for tweet in text:
tweet_words = tweet.split()
tweet_phrases.extend(tweet_words)
bigram_measures = nltk.collocations.BigramAssocMeasures()
finder = BigramCollocationFinder.from_words(tweet_phrases,window_size = 13)
finder.apply_freq_filter(10)
finder.nbest(bigram_measures.pmi,20)
for k,v in finder.ngram_fd.items():
print(k,v)
Однако это не ограничивает результаты до 20. Я вижу результаты, которые имеют частоту < 10. Я новичок в мире Python.
Кто-нибудь может указать, как изменить это, чтобы получить только верхнюю часть 20.
Спасибо