如何使用 SpaCy 将复数名词转换为单数?

How to convert plural nouns to singular using SpaCy?

我正在使用 SpaCy 对文本进行词形还原,但在某些特殊情况下,我需要保留原始文本,只是将复数名词转换为单数形式。 有没有办法告诉 SpaCy only 将复数名词转换为单数而不对整个文本进行词形还原(比如删除 ed、ing...等)?或者我应该明确地测试每个标记以检查它是否是一个复数名词来使用它的引理?

P.S。输入文本是动态的,所以我事先不知道这个词是不是名词

谢谢

您不能使用 spacy 将复数名词转换为单数名词。 您可以检查token是复数名词还是单数名词。

如果令牌的标签等于 'NNS',请在字典中检查该令牌并获取该令牌的单数形式。

感谢 bivouac0 的评论。我检查了每个标记的 tag_ 字段并检索标记为 'NNS' 或 'NNPS'

的标记的引理
processed_text = nlp(original_text)
lemma_tags = {"NNS", "NNPS"}
for token in processed_text:
   lemma = token.text
   if token.tag_ in lemma_tags:
      lemma = token.lemma_
   ...
   # rest of code
   ...
   ...