Вычислительный TTR на корпусе

Я пытаюсь вычислить TTR корпуса "Capitol Words", используя леммы для всего словаря каждого говорящего.

Я тоже пытаюсь defaultdict перетасуйте каждую запись, а затем укажите процент TTR для каждого докладчика. Пока у меня есть код выше, но не уверен, как это исправить, чтобы он работал...

import nltk
cw = ReadCorpus(root)
from collections import defaultdict 
speaker_TTR = defaultdict(int)
for record in cw:
    total_words = set([])
    N = 0
    text = record['text']
    processed = nlp(text)
    textw = [t.lemma_ for t in processed]
    N += len(textw)
    total_words |= set(textw)
    V = len(total_types)
    TTR = float(V)/float(N)
    speaker_TTR[record['speaker_name']] += 1

print "V = ",V
print "N = ",N
print "TTR = ",TTR

0 ответов

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