Python NLTK错误:未找到NLTK中的english.pickle资源

时间:2015-09-12 12:07:52

标签: python nltk sentiment-analysis named-entity-recognition

尝试在Python中学习NLP和情感分析并遇到了NLTK。做了一些教程,但是因为它对我不起作用而被卡在标记化功能上(命令行说我没有资源)。

我已经尝试安装punkt虽然已经下载了,但命令行仍会出现同样的错误:

Resource u'taggers/maxent_treebank_pos_tagger/english.pickle'
not found.  Please use the NLTK Downloader to obtain the
resource:  >>> nltk.download()
Searched in:
  - 'C:\\Users\\JeromePogi/nltk_data'
  - 'C:\\nltk_data'
  - 'D:\\nltk_data'
  - 'E:\\nltk_data'
  - 'C:\\Python27\\nltk_data'
  - 'C:\\Python27\\lib\\nltk_data'
  - 'C:\\Users\\JeromePogi\\AppData\\Roaming\\nltk_data'
  - u''

我确实尝试了一切,包括将nltk_data文件夹放在它搜索过的每个目录中,但无济于事。如何解决此错误?

3 个答案:

答案 0 :(得分:6)

尝试安装" maxent_treebank_pos_tagger"在python控制台中使用nltk.download()

答案 1 :(得分:4)

从shell / terminal / cmd,您可以使用:

python -m nltk.downloader maxent_treebank_pos_tagger

(可能需要在Linux上使用sudo)

它将安装maxent_treebank_pos_tagger(即NLTK中的标准树库POS标记器)并修复您的问题。

答案 2 :(得分:0)

就我而言,问题在于我没有正确认识到如何将语言作为参数传递。我的代码是:

word_tokenize('So was he doing.', 'en')

哪个错了。 使用完整的语言名称