将语料库从 quanteda 转换为 tm

Convert Corpus from quanteda to tm

我的数据 mycorpus 在 quanteda-corpus(corpus-function from quanteda)中,我需要将其转换为 tm 包下的语料库。我知道 quanteda 的 convert 函数。不过,这只会将 doc-feature-matrix 转换为 tm。我缺少快速修复方法吗? tm 的 VCorpus(mycorpus) 抛出错误消息“缺少来源”

如果你有 dfm,你可以使用 tm 包中的 as.DocumentTermMatrix 函数。

如果您有一个名为 my_dfm 的 dfm,您可以使用下面的代码行。您需要为 dtm 的权重提供一个选项,但来自 quanteda 它只是 weightTf

my_dtm <- as.DocumentTermMatrix(my_dfm, weighting = weightTf)

你可以直接从包裹在 VCorpus 中的 VectorSource 构造一个 tm Corpus/VCorpus,因为 quanteda 语料库只是一个特殊字符向量。

library("tm")
## Loading required package: NLP

# from version 3.0 of quanteda
data(data_corpus_inaugural, package = "quanteda")

VCorpus(VectorSource(data_corpus_inaugural))
## <<VCorpus>>
## Metadata:  corpus specific: 0, document level (indexed): 0
## Content:  documents: 59

但是……你真的want/need要这么做吗?