r语言 - 使用语料库作为字典时,stemCompletion()函数输出错误



作为词干补全步骤的一个例子,假设我想在c('universidad', 'university', 'university')字典中找到与'univers'匹配的最频繁(流行)的单词。根据stemCompletion()函数的帮助页:

type = '盛行'(默认)将最频繁的匹配作为完成。

library(tm) # 0.6.2

如果我插入字典作为一个向量:

stemCompletion('univers', dictionary=c('universidad', 'university', 'university'))
     univers 
"university" 

我得到了正确答案。但是如果我把字典作为语料库:

my.dictionary <- Corpus(VectorSource(c('universidad', 'university', 'university')))
stemCompletion('univers', dictionary=my.dictionary)
      univers 
"universidad"

我得到了错误的答案!

感谢任何帮助!

在包源tm/src/complete.R中,似乎如果将Corpus作为dictionary参数传递给stemComplete,则在词干补全分析之前删除该字典。

你的版本的相关行是8-9:

if (inherits(dictionary, "Corpus"))
    dictionary <- unique(unlist(lapply(dictionary, words)))

为什么相同的逻辑不应用于向量字典是一个问题,但似乎观察到的行为是有意的。

最新更新