如果您能显示变量nlp
的来源,那么回答这个问题会更容易。
但是根据您所说的,我假设您指的是这个包:https ://pypi.org/project/snowballstemmer ,据我所知,它没有定义任何停用词。
如果您正在使用该nltk
软件包,那么您可以这样做:
import nltk
# needed once - nltk seems to cache it
nltk.download('stopwords')
# load cached stop words
stopwords = frozenset(nltk.corpus.stopwords.words('english'))
stem2 =[]
for word in stem:
if word not in stopwords:
stem2.append(word)
如果您正在使用该spacy
软件包,您可以执行例如
from spacy.lang.en.stop_words import STOP_WORDS
for word in stem:
if word not in STOP_WORDS:
stem2.append(word)
更快的应该是列表理解:
stem2 = [word for word in stem if word not in STOP_WORDS]
上面的代码当然假设stem
定义了一个很可能是字符串列表的变量。根据您的要求,您可能需要检查实际的停用词,根据您选择的库,它们可能是略有不同的词组,因此上述解决方案通常不会返回相同的结果。