NLTK et les mots vides Fail #lookuperror
Je suis en train de commencer un projet d'analyse de sentiment et je vais utiliser les mots vides méthode. J'ai fait quelques recherches et j'ai trouvé que nltk ont des mots vides, mais quand j'execute la commande il y a une erreur.
Ce que je fais est la suivante, afin de savoir quels sont les mots qui nltk d'utilisation (comme ce que vous pouvez trouver ici http://www.nltk.org/book/ch02.html dans la section4.1):
from nltk.corpus import stopwords
stopwords.words('english')
Mais lorsque j'appuie sur entrer je obtenir
---------------------------------------------------------------------------
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'
**********************************************************************
Et, à cause de ce problème ce genre de choses ne peut pas s'exécuter correctement (obtenir le même message d'erreur):
>>> 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]
Savez-vous ce que peut être le problème? Je dois utiliser des mots en espagnol, ne vous recommander une autre méthode? J'ai aussi pensé à l'aide de Goslate paquet avec des ensembles de données en anglais
Merci pour la lecture!
P. D.: j'utilise Ananconda
Vous devez vous connecter pour publier un commentaire.
Vous ne semblez pas avoir les mots vides corpus sur votre ordinateur.
Vous avez besoin pour commencer la NLTK Downloader et de télécharger toutes les données dont vous avez besoin.
Ouvrir une console Python et effectuez les opérations suivantes:
Dans l'interface utilisateur de la fenêtre qui s'ouvre, appuyez simplement sur le "Télécharger" bouton pour télécharger tous les corpus ou aller pour le 'Corps' de l'onglet et de télécharger uniquement ceux dont vous avez besoin/envie.
nltk.download("stopwords")
J'ai essayé de ubuntu terminal et je ne sais pas pourquoi le GUI ne s'est pas présenté selon tttthomasssss réponse. J'ai donc suivi le commentaire de KLDavenport et cela a fonctionné. Voici le résumé:
Ouvrez votre terminal/de ligne de commande et tapez python puis
>>> import nltk
.>>> nltk.download("stopwords")
Cette option permet de stocker les mots vides corpus sous la nltk_data. Pour mon cas, c'était
/home/myusername/nltk_data/corpora/stopwords
.Si vous avez besoin d'un autre corpus, puis visite de nltk de données et de trouver le corpus avec leur pièce d'identité. Ensuite, utilisez l'ID à télécharger comme nous l'avons fait pour les mots vides.
Si vous souhaitez installer manuellement NLTK Corpus.
1) Aller à http://www.nltk.org/nltk_data/ et de téléchargement de votre choix NLTK Corpus de fichier.
2) Maintenant, dans un Python shell vérifier la valeur de nltk.les données.chemin
3) Choisissez un chemin d'accès qui existe sur votre ordinateur et décompressez les fichiers de données dans le corpus sous-répertoire à l'intérieur.
4) Maintenant, vous pouvez importer les données à partir de nltk.corpos importer des mots vides
Référence: https://medium.com/@satorulogic/how-to-manually-download-a-nltk-corpus-f01569861da9
Cliquez sur le bouton de téléchargement lorsque gui invité. Il a travaillé pour moi.(
nltk.download('stopwords')
ne fonctionne pas pour moi)