如何在nltk列表中添加更多停用词?

时间:2017-09-21 11:18:38

标签: python pandas nltk

我有以下代码。我必须在nltk禁用词列表中添加更多单词。运行thsi后,它不会在列表中添加单词

from nltk.corpus import stopwords 
from nltk.stem.wordnet import WordNetLemmatizer
import string
stop = set(stopwords.words('english'))       
new_words = open("stopwords_en.txt", "r")  
new_stopwords = stop.union(new_word)  
exclude = set(string.punctuation)   
lemma = WordNetLemmatizer()  
def clean(doc):
    stop_free = " ".join([i for i in doc.lower().split() if i not in new_stopwords])    
    punc_free = ''.join(ch for ch in stop_free if ch not in exclude)
    normalized = " ".join(lemma.lemmatize(word) for word in punc_free.split())   
    return normalized
doc_clean = [clean(doc).split() for doc in emails_body_text] 

1 个答案:

答案 0 :(得分:1)

不要盲目地做事。阅读新的停用词列表,检查它是否正确,然后将其添加到其他停用词列表中。从@greg_data建议的代码开始,但您需要删除换行符并执行其他操作 - 谁知道您的停用词文件是什么样的?

这可能会这样做,例如:

new_words = open("stopwords_en.txt", "r").read().split()
new_stopwords = stop.union(new_words)

PS。不要分裂和加入你的文件;标记化一次并使用标记列表。