微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我是否缺少spaCy词条化中的预处理功能?

如何解决我是否缺少spaCy词条化中的预处理功能?

我正在尝试使用spacy获取文档中所有令牌的引号(即token.lemma _)。

代码

sentence = 'I'm looking for all of the lemmas. Please help me find them!'
nlp = spacy.load('en',disable=['parser','NER])
doc = nlp(sentence)
tokens = [tokens.lemma_ for token in doc]

预期结果:

['look','lemma','help','find']

实际结果:

[-PRON-,'be','look','all','of','the','.','please','-PRON-','find','-PRON','!']

我是否在spacy中缺少某种预处理功能,还是必须单独进行预处理?我希望在词形还原之前删除所有标点和停用词。

解决方法

您可以使用

>>> [token.lemma_ for token in doc if not token.is_stop and not token.is_punct]
['look','lemma','help','find']

已添加以下部分:

  • if not token.is_stop-如果令牌是停用词
  • and-和
  • not token.is_punct-如果令牌是标点符号,请忽略它们。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。