NameError: name 'stopwords' is not defined

NameError: name 'stopwords' is not defined

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


区块 1

import re
import nltk
nltk.download('stopwords')

输出 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

区块 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**

输出 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

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

from nltk.corpus import stopwords