You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:01:57