缺少spacy en_-core_-web-lg中的停止词

2024-04-25 22:22:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我下载了en_core_web_lg(en_core_web_lg-2.0.0),但是当我加载它并在spacy上使用它时。但它似乎漏掉了许多基本的常用停止词,如“be”、“a”等。我是否遗漏了正确的版本?在

import nltk
n = nltk.corpus.stopwords.words('english')
"be" in n

O/p:正确

^{pr2}$

O/p:错误


Tags: incoreimport版本webenglishspacycorpus
2条回答

英语停止词在this文件中定义,如您所见,be属于它们。在

您可以导入英语停止词集,然后检查您的单词是否属于它。 可能有更简单的方法,但下面的代码确实可以实现您所要的:

from spacy.lang.en import STOP_WORDS
import spacy
nlp = spacy.load('en')
doc = nlp("be amazing")
for token in doc:
    if (token.text in STOP_WORDS):
        print(token.text)

您可能遇到了这个bug:

https://github.com/explosion/spaCy/issues/1574

en_core_web_md和en_core_web_lg型号缺少停止字,但是您的代码将与en_core_web_sm一起工作。在

相关问题 更多 >

    热门问题