请参阅下面的MWE,自定义的tokenizer无法正常工作,为什么? tm包版本是0.71
library(tm)
ts <- c("This is a testimonial")
corpDs <- Corpus(VectorSource(ts))
#This is not working
ownTokenizer <- function(x) unlist(strsplit(as.character(x), "i+"))
tdm <- DocumentTermMatrix(corpDs,control=list(tokenize=ownTokenizer))
as.matrix(tdm)
#This is working
ownTokenizer(ts)
输出:
条款
文档推荐此
1 1 1
[1]&#34; Th&#34; &#34; s&#34; &#34;是一个测试&#34; &#34;周一&#34; &#34;人&#34;
谢谢,
托拜厄斯
答案 0 :(得分:2)
我知道现在这有些陈旧,但也许它仍然有助于其他人:你必须更换 corpDS&LT; -Corpus(...) 通过 corpDS&LT; -VCorpus(...) 由于tm文档在TermDocumentMatrix描述中声明,&#34; SimpleCorpus&#34;语料库总是用固定的标记器进行标记化 - 没有经济化 - 对于&#34;语料库&#34; ...
似乎是相同的