[英]NLTK Stopword List
我有下面的代码,我试图将停用词列表应用于单词列表。 然而,结果仍然显示“a”和“the”这样的词,我认为这个词会被这个过程删除。 任何出错的想法都会很棒。
import nltk
from nltk.corpus import stopwords
word_list = open("xxx.y.txt", "r")
filtered_words = [w for w in word_list if not w in stopwords.words('english')]
print filtered_words
一些值得注意的事情。
如果您要反复检查列表中的成员资格,我会使用集合而不是列表。
stopwords.words('english')
返回一个小写停用词列表。 您的来源很可能包含大写字母,因此不匹配。
您没有正确读取文件,您正在检查文件对象而不是按空格分割的单词列表。
把它们放在一起:
import nltk
from nltk.corpus import stopwords
word_list = open("xxx.y.txt", "r")
stops = set(stopwords.words('english'))
for line in word_list:
for w in line.split():
if w.lower() not in stops:
print w
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.