Нлтк pos_tag ошибка в windows анаконда
Хотя я хочу собирать POS-теги с помощью функции pos_tag, возникает следующая ошибка. Я включил все пакеты, необходимые для nltk. Версия nltk 3.3 и работает в среде conda. версия Python 3.6. все пакеты nltk загружаются с использованием функции загрузки nltk, но каждый раз, когда я запускаю функцию pos_tag, выдается следующее сообщение об ошибке.
>>> from nltk import pos_tag, word_tokenize
>>> pos_tag(word_tokenize("John's big idea isn't all that bad."))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\User\Anaconda3\envs\sow\lib\site-packages\nltk\tag\__init__.py", line 133, in pos_tag
tagger = _get_tagger(lang)
File "C:\Users\User\Anaconda3\envs\sow\lib\site-packages\nltk\tag\__init__.py", line 97, in _get_tagger
tagger = PerceptronTagger()
File "C:\Users\User\Anaconda3\envs\sow\lib\site-packages\nltk\tag\perceptron.py", line 141, in __init__
self.load(AP_MODEL_LOC)
File "C:\Users\User\Anaconda3\envs\sow\lib\site-packages\nltk\tag\perceptron.py", line 223, in load
self.model.weights, self.tagdict, self.classes = load(loc)
File "C:\Users\User\Anaconda3\envs\sow\lib\site-packages\nltk\data.py", line 836, in load
opened_resource = _open(resource_url)
File "C:\Users\User\Anaconda3\envs\sow\lib\site-packages\nltk\data.py", line 957, in _open
return find(path_, ['']).open()
File "C:\Users\User\Anaconda3\envs\sow\lib\site-packages\nltk\data.py", line 675, in find
raise LookupError(resource_not_found)
LookupError:
**********************************************************************
Resource [93mD:[0m not found.
Please use the NLTK Downloader to obtain the resource:
[31m>>> import nltk
>>> nltk.download('D:')
[0m
Searched in:
- ''
**********************************************************************
1 ответ
Решение
Вам необходимо установить nltk
Корпус то есть данные. Ваш код пытается найти pos
теги и tokenize
данные.
>>> import nltk
>>> nltk.download()
Это должно решить вашу проблему.
Ссылка: данные НЛТК
Редактировать после предложения @nikki.
Если у вас была предыдущая установка nltk_data
он загрузит его в то же место. В этом случае вы должны сделать следующее. Это конфликт, который вызывает у вас проблему.
nltk.data.path.append('old_location_of_nltk_data')
или же
задавать NLTK_DATA
переменная окружения.