NLTK и Stopwords Fail #lookuperror

Я пытаюсь начать проект анализа настроений, и я буду использовать метод стоп-слов. Я провел некоторое исследование, и я обнаружил, что nltk имеет временные слова, но когда я выполняю команду, возникает ошибка.

Я делаю следующее, чтобы узнать, какие слова используют nltk (например, что вы можете найти здесь http://www.nltk.org/book/ch02.html в разделе4.1):

from nltk.corpus import stopwords stopwords.words('english') 

Но когда я нажимаю кнопку ввода, я получаю

 --------------------------------------------------------------------------- LookupError Traceback (most recent call last) <ipython-input-6-ff9cd17f22b2> in <module>() ----> 1 stopwords.words('english') C:\Users\Usuario\Anaconda\lib\site-packages\nltk\corpus\util.pyc in __getattr__(self, attr) 66 67 def __getattr__(self, attr): ---> 68 self.__load() 69 # This looks circular, but its not, since __load() changes our 70 # __class__ to something new: C:\Users\Usuario\Anaconda\lib\site-packages\nltk\corpus\util.pyc in __load(self) 54 except LookupError, e: 55 try: root = nltk.data.find('corpora/%s' % zip_name) ---> 56 except LookupError: raise e 57 58 # Load the corpus. LookupError: ********************************************************************** Resource 'corpora/stopwords' not found. Please use the NLTK Downloader to obtain the resource: >>> nltk.download() Searched in: - 'C:\\Users\\Meru/nltk_data' - 'C:\\nltk_data' - 'D:\\nltk_data' - 'E:\\nltk_data' - 'C:\\Users\\Meru\\Anaconda\\nltk_data' - 'C:\\Users\\Meru\\Anaconda\\lib\\nltk_data' - 'C:\\Users\\Meru\\AppData\\Roaming\\nltk_data' ********************************************************************** 

И из-за этой проблемы такие вещи не могут работать должным образом (получение той же ошибки):

 >>> from nltk.corpus import stopwords >>> stop = stopwords.words('english') >>> sentence = "this is a foo bar sentence" >>> print [i for i in sentence.split() if i not in stop] 

Знаете ли вы, что может быть проблемой? Я должен использовать слова на испанском языке, рекомендуете ли вы другой метод? Я также подумал использовать пакет Goslate с наборами данных на английском языке

Спасибо за прочтение!

PD: Я использую Ananconda

  • Как удалить список слов из списка строк
  • Избавиться от стоп-слов и знаков препинания
  • Как удалить стоп-слова с помощью nltk или python
  • Удаление стоп-слова с помощью NLTK
  • 3 Solutions collect form web for “NLTK и Stopwords Fail #lookuperror”

    Кажется, у вас нет компьютера с остатками на вашем компьютере.

    Вам нужно запустить NLTK Downloader и загрузить все необходимые данные.

    Откройте консоль Python и выполните следующие действия:

     >>> import nltk >>> nltk.download() showing info http://nltk.github.com/nltk_data/ 

    В открывшемся окне GUI просто нажмите кнопку «Загрузить», чтобы загрузить все корпуса или перейти на вкладку «Corpora» и загружать только те, которые вам нужны / нужны.

    Если вы хотите вручную установить NLTK Corpus.

    1) Перейдите на страницу http://www.nltk.org/nltk_data/ и загрузите нужный файл NLTK Corpus.

    2) Теперь в оболочке Python проверьте значение nltk.data.path

    3) Выберите один из путей, который существует на вашем компьютере, и разархивируйте файлы данных в внутренний каталог.

    4) Теперь вы можете импортировать данные из nltk.corpos import stopwords

    Ссылка: https://medium.com/@satorulogic/how-to-manually-download-a-nltk-corpus-f01569861da9

     import nltk nltk.download() 

    Нажмите кнопку загрузки, когда появится приглашение gui. Это сработало для меня. ( nltk.download('stopwords') не работает для меня)

    Python - лучший язык программирования в мире.