NameError:未定义名称'stopwords'

jam*_*mes 4 python nlp stop-words

NameError: name 'stopwords' is not defined出于某种原因得到了错误,即使我安装了包.我正在尝试对一些反馈评论进行自然语言处理.该dataset对象是一个包含两列Reviews (a sentence of feedback)和目标变量的表Liked (1 or 0).帮助表示感谢,谢谢!


第1座

import re
import nltk
nltk.download('stopwords')
Run Code Online (Sandbox Code Playgroud)

输出1

   > [nltk_data] Downloading package stopwords to

   > [nltk_data]     /Users/user/nltk_data...

   > [nltk_data]   Package stopwords is already up-to-date!

   > Out[14]: True
Run Code Online (Sandbox Code Playgroud)

第2块

dataset['Review'][0]
review = re.sub('[^a-zA-Z]',' ' ,dataset['Review'][0])
review = review.lower()
review = review.split()
review = [word for word in review if not word in stopwords.words('english')] **ERROR ON THIS LINE**
Run Code Online (Sandbox Code Playgroud)

输出2

>NameError                                 Traceback (most recent call last)
<ipython-input-16-8d0ee1fd7c7f> in <module>()
      3 review = review.lower()
      4 review = review.split()
----> 5 review = [word for word in review if not word in stopwords.words('english')]

><ipython-input-16-8d0ee1fd7c7f> in <listcomp>(.0)
      3 review = review.lower()
      4 review = review.split()
----> 5 review = [word for word in review if not word in stopwords.words('english')]

>NameError: name 'stopwords' is not defined
Run Code Online (Sandbox Code Playgroud)

Pan*_*Das 11

您只需stopwords在代码中使用之前添加以下行:

from nltk.corpus import stopwords
Run Code Online (Sandbox Code Playgroud)

  • 谢谢潘纳!我所遵循的教程没有,所以我认为这有点奇怪。 (2认同)
  • 谢谢我,我的朋友,这是我们互相帮助:) (2认同)