私は次のPythonスクリプトを持っている:私は、スクリプトを実行しようとするとKeyError例外: '\ documentclass'
import nltk
from nltk.probability import FreqDist
nltk.download('punkt')
frequencies = {}
book = open('book.txt')
read_book = book.read()
words = nltk.word_tokenize(read_book)
frequencyDist = FreqDist(words)
for w in words:
frequencies[w] = frequencies[w] + 1
print (frequencies)
、私は次を得る:
[nltk_data] Downloading package punkt to /home/abc/nltk_data...
[nltk_data] Package punkt is already up-to-date!
Traceback (most recent call last):
File "test.py", line 12, in <module>
frequencies[w] = frequencies[w] + 1
KeyError: '\\documentclass'
私が間違って何をしているのですか?そして、単語とそれがテキストファイルに出現する回数をどのようにして印刷することができますか?
book.txt
は、hereからダウンロードできます。
なぜあなたは 'frequencies'とあなたのバギーを持っていますあなたが入手しようとしているすべての情報を含んでいるNLTK 'FreqDist'も使用しているときは' words 'をループしてください。 – user2357112
ループの最初の段階では、(まだ)存在しない '周波数[w]'を取得しようとしています。キーエラーが発生します。 –