Две мысли, которые, я надеюсь, хотя бы поспособствуют ответу.
Во-первых, документация для метода nltk.text.Text () гласит (выделено мое):
Обертка вокруг последовательности простых (строковых) токенов, которая предназначена для поддержки начального исследования текстов (через интерактивную консоль) .Его методы выполняют различные анализы контекста текста (например, подсчет, согласование, обнаружение расположения) и отображают результаты. Если вы хотите написать программу, которая использует эти анализы, тогда вам следует обойти класс Text и напрямую использовать соответствующую функцию или класс анализа.
Итак, яя не уверен, что Text () - это способ обработки этих данных.Мне кажется, что вы бы неплохо воспользовались списком.
Во-вторых, я бы предупредил вас подумать о расчете, который вы просите NLTK выполнить здесь.Удаление стоп-слов перед определением распределения частот означает, что ваши частоты будут искажены;Я не понимаю, почему перед табуляцией удаляются стоп-слова, а не просто игнорируются при рассмотрении распределения после факта.(Я полагаю, что этот второй пункт будет лучше выполнять запрос / комментарий, чем часть ответа, но я счел, что стоит указать, что пропорции будут искажены.) В зависимости от того, для чего вы собираетесь использовать распределение частот, это может или можетне будет проблемой само по себе.