NLTK POS tagger not working
Asked Answered
S

2

6

If I try this :

import nltk
text = nltk.word_tokenize("And now for something completely different")
nltk.pos_tag(text)

Output:

Traceback (most recent call last):
File "C:/Python27/pos.py", line 3, in <module>
nltk.pos_tag(text)
File "C:\Python27\lib\site-packages\nltk-2.0.4-py2.7.egg\nltk\tag\__init__.py" ipos_tag
tagger = load(_POS_TAGGER)
File "C:\Python27\lib\site-packages\nltk-2.0.4-py2.7.egg\nltk\data.py", line 605,in 
resource_val = pickle.load(_open(resource_url))
ImportError: No module named numpy.core.multiarray
Stopgap answered 24/1, 2013 at 17:15 Comment(0)
S
10

It seems that the saved word tokenizer requires numpy. You'll need to install it.

Storer answered 24/1, 2013 at 18:22 Comment(3)
If Numpy's required by NLTK, shouldn't it be installed as a dependency automatically assuming one used Pip or other installer tools? I ask because I installed NLTK using Pip, then encountered the same issue.Guillot
@Guillot Numpy's not required for most of NLTK, just some parts. (It's listed as optional on the install page.) That said, it's super-handy to have around in general if you're doing any kind of machine learning type stuff or other number crunching.Storer
wouldn't it be better for NLTK to split out the numpy-dependent code to a separate libraryLit
S
3

Install numpy using the command:

sudo pip install -U numpy
Stroll answered 24/2, 2015 at 14:45 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.