R包textstem中,stem_word("way")为什么返回"wai"

问题描述

我认为标题分享了这一切。我在大量文本中使用了词干词,但我不理解这个特殊的结果。

在R包textstem中,为什么stem_word("way")返回"wai"

我知道这是词干(例如“驱动”和“驱动”变成“驱动”),但“wai”似乎不是“way”的词干

library(textstem)
stem_word("way")

解决方法

这就是词干提取的工作原理。 Stemming 试图找到一个词的“重要”词根。例如,这个特殊规则可以将“故事”和“故事”结合起来。

stem_words(c("story","stories"))
# [1] "stori" "stori"

在这种情况下,wayways 也都指向同一个词根

stem_words(c("way","ways"))
# [1] "wai" "wai"

大多数词干算法不保证生成一个实际的单词,它们只是尝试组合可能具有共同词根的单词。并且由于词尾的“y”经常在作品被某个后缀“拉长”时变为“i”,因此如果您将所有终端“y”改为“是。如果这对您来说是个问题,您必须看看是否可以选择不同的词干算法或编写自己的词干算法来满足您的特定需求。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...