如何用nltk去除停用词
时间: 2023-06-25 21:02:29 浏览: 138
NLTK下载停用词(stopwords)
可以使用 NLTK 中的 `stopwords` 模块来去除停用词。首先,需要下载 `stopwords` 模块:
```
import nltk
nltk.download('stopwords')
```
然后,可以从 `stopwords` 模块中导入停用词列表,并将其应用于文本中的单词:
```
from nltk.corpus import stopwords
stop_words = set(stopwords.words('english'))
text = "This is an example sentence to demonstrate stop word removal."
word_tokens = word_tokenize(text)
filtered_sentence = [w for w in word_tokens if not w.lower() in stop_words]
```
在上面的代码中,首先从 `nltk.corpus` 中导入 `stopwords` 模块。然后,使用 `set()` 函数创建一个停用词集合,其中包含用于英语的停用词。接下来,使用 `word_tokenize()` 函数将文本分成单词,然后使用列表推导式过滤掉所有出现在停用词集合中的单词。最终,`filtered_sentence` 变量将只包含不是停用词的单词。
请注意,以上代码假设已经导入了 `nltk` 和 `word_tokenize` 函数。完整代码如下:
```
import nltk
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize
nltk.download('stopwords')
stop_words = set(stopwords.words('english'))
text = "This is an example sentence to demonstrate stop word removal."
word_tokens = word_tokenize(text)
filtered_sentence = [w for w in word_tokens if not w.lower() in stop_words]
print(filtered_sentence)
```
阅读全文