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

双向重复测量ANOVA事后检验自由度疑问求助

双向重复测量ANOVA事后检验自由度疑问解答

问题背景

我正在开展混合设计的重复测量ANOVA分析:两组受试者(每组n=10,共20人)接受不同处理,为期6天(6个时间点),已得到显著的timepoint*group交互效应。但运行事后检验时,发现timepoint*group项的自由度为18,这和我预期的合并误差项自由度不符——我原本认为事后检验应采用合并误差项,自由度应为(n-1)(a-1)类型的计算结果。所用代码如下:

post_hoc = pg.pairwise_tests(
    data=long_df,
    dv='score',
    within='timepoint',
    between='group',
    subject='subject',
    padjust='bonf',
    )

关键解析

  • 自由度18的来源:你看到的18是N - k的计算结果,其中N是总样本量(20),k是组数(2)。这是因为pingouin.pairwise_tests()在处理混合设计的交互项事后检验时,默认将每个对比视为独立的混合设计t检验,此时误差项的自由度就是总样本量减去组数,即20-2=18。
  • 你预期的合并误差项为何不适用:你提到的合并误差项自由度(比如(n-1)(a-1))是重复测量ANOVA模型整体的残差自由度,但pairwise_tests()的默认逻辑是针对每个具体对比单独计算误差,而非借用ANOVA模型的合并残差。这种做法更保守,避免因整体误差的异质性影响单个对比的结果。
  • 如果要使用合并误差项怎么办:pingouin的pairwise_tests()目前没有直接调用合并误差项的参数,你需要手动实现:
    • 先运行完整的重复测量ANOVA,提取模型的残差自由度和残差均方
    • 针对感兴趣的timepoint*group交互对比,手动计算统计量,并使用合并的残差自由度进行显著性检验

内容的提问来源于stack exchange,提问作者Rachel O'Sullivan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 04:51:00