python中停用词列表的速度更快:
stopwords = ('a','and', 'etc')
或使用文件来调用它?
答案 0 :(得分:2)
NLTK
有一个停用词作为列表。
nltk.corpus.stopwords.words('english')
它比使用文件并在翻阅停用词时读取文件更快,如果这就是你的意思。
答案 1 :(得分:1)
文件操作总是比正常的代码执行慢得多。因此,如果您需要的数据足够小,请不要使用文件。
如果满足以下任何条件,则使用文件:
如果您只有有限数量的停用词,并且如果您不需要经常更改它们,那么请始终使用
stopwords = ('a','and', 'etc')
答案 2 :(得分:1)
如果您不想下载nltk
,可以随处找到停用词文件。它们通常每行列出一个单词,因此很容易将它们放在自己的结构中。
stopwords = ()
for line in open('stopwordfile'):
stopwords += (line,)
然而,比在元组中查找单词更快的是使用字典,可能最好使用默认返回值:
stopdict = {w:True for w in stopwords}
for word in text_you_want_to_index:
if word not in stopdict: # or: not stopdict.get(word, False): don't know which one more performant
print word