Quanteda中能否使用textstat_keyness分析两个独立语料库?
能否用textstat_keyness分析两个独立语料库?
嘿,当然可以!textstat_keyness函数完全支持对比两个独立的语料库,只需要先把它们合并成一个语料库,再通过target参数区分目标组和参考组就可以了。
核心思路
根据函数的参数定义,target用于标识目标文档集合,剩下的文档会自动合并为参考集合。所以针对两个独立语料库的场景,我们只需要:
- 合并两个语料库为一个整体
- 给每个文档添加分组标记(区分来自哪个原始语料库)
- 调用
textstat_keyness时,用target指定目标语料库的标记值
具体操作示例
下面是一个完整的代码演示:
# 加载quanteda包 library(quanteda) # 模拟两个独立语料库 corpus_target <- corpus(c( "The quick brown fox jumps over the lazy dog.", "Foxes are clever and agile animals." )) corpus_reference <- corpus(c( "Dogs are loyal and friendly pets.", "The lazy dog loves to sleep in the sun." )) # 合并两个语料库 combined_corpus <- corpus(c(corpus_target, corpus_reference)) # 添加分组变量,标记每个文档所属的原始语料库 docvars(combined_corpus, "corpus_group") <- c( rep("target", ndoc(corpus_target)), rep("reference", ndoc(corpus_reference)) ) # 生成文档-特征矩阵(DFM) dfm_combined <- dfm(combined_corpus) # 计算keyness,指定target为标记的"target"组 keyness_results <- textstat_keyness( dfm_combined, target = "target", measure = "chi2" # 可根据需求选择chi2/exact/lr/pmi等 ) # 查看结果 print(keyness_results)
结果说明
运行上述代码后,keyness_results会返回目标语料库相对于参考语料库的显著性特征,包括特征词、统计量和p值等。函数会自动将target组的所有文档频率合并作为目标集合,reference组的所有文档频率合并作为参考集合,完美实现两个独立语料库的keyness分析。
内容的提问来源于stack exchange,提问作者Marina Santini
相关产品推荐
相关产品推荐

