R 中的文档术语矩阵 - 双字符标记器不起作用

Document-term matrix in R - bigram tokenizer not working

我正在尝试为语料库制作 2 个文档术语矩阵,一个是一元字母组,一个是双字母组。但是,二元矩阵目前与一元矩阵完全相同,我不确定为什么。

代码:

docs<-Corpus(DirSource("data", recursive=TRUE))

# Get the document term matrices
BigramTokenizer <- function(x) NGramTokenizer(x, Weka_control(min = 2, max = 2))
dtm_unigram <- DocumentTermMatrix(docs, control = list(tokenize="words", 
    removePunctuation = TRUE, 
    stopwords = stopwords("english"), 
    stemming = TRUE))
dtm_bigram <- DocumentTermMatrix(docs, control = list(tokenize = BigramTokenizer,
    removePunctuation = TRUE,
    stopwords = stopwords("english"),
    stemming = TRUE))

inspect(dtm_unigram)
inspect(dtm_bigram)

我还尝试使用 ngram 包中的 ngram(x, n=2) 作为分词器,但这也不起作用。如何修复二元词标记化?

分词器选项似乎不适用于语料库 (SimpleCorpus)。使用 VCorpus 解决了这个问题。