首页 > 解决方案 > 在 Quanteda 中选择两个不连续的文件形成一个子语料库

问题描述

我希望获得有关选择两个或多个非连续文件以形成子语料库的建议。此代码选择 1 个文件:testcorpus <- texts (txtdata)[2]

如果我想形成一个结合文件 1 和 25 的语料库,我该怎么做:

我尝试修改我在网上找到的代码,结果如下:

> my_corpus1 <- corpus(txtdata)[1] 
> my_corpus2 <- corpus(txtdata)[25] 
> my_corpus3 <- ( my_corpus1 + my_corpus2)
Error in my_corpus1 + my_corpus2 : 
  non-numeric argument to binary operator

>  xx <- corpus(txtdata)[1]  + corpus(txtdata)[25] 
Error in corpus(txtdata)[1] + corpus(txtdata)[25] : 
  non-numeric argument to binary operator

> my_corpus3 <-c( my_corpus1 + my_corpus2)
Error in my_corpus1 + my_corpus2 : 
  non-numeric argument to binary operator

任何建议表示赞赏,

鲍勃

标签: rsubsetcorpusquanteda

解决方案


我会这样做:

library("quanteda")
## Package version: 1.4.1
## Parallel computing: 2 of 12 threads used.
## See https://quanteda.io for tutorials and examples.

corpus_subset(
  data_corpus_inaugural,
  seq_len(ndoc(data_corpus_inaugural)) %in% c(1, 25)
)
## Corpus consisting of 2 documents and 3 docvars.

这里的子集参数返回一个逻辑向量,其中第一个和第 25 个元素为真,其余为假,它将这些文档选择到您的子语料库中。


推荐阅读