哪个 statsmodels ANOVA 模型用于主体内和主体间设计?

Which statsmodels ANOVA model for within- and between-subjects design?

我有一个经典的方差分析设计:两个实验条件,每个条件有两个水平;一位参与者回答了四个结果条件中的两个。我的数据样本如下所示:

participant_ID  Condition_1 Condition_2 dependent_var
1               1           1           0.71
1               2           1           0.43
2               1           1           0.77
2               2           1           0.37
3               1           1           0.58
3               2           1           0.69
4               2           1           0.72
4               1           1           0.12
26              2           2           0.91
26              1           2           0.53
27              1           2           0.29
27              2           2           0.39
28              2           2           0.75
28              1           2           0.51
29              1           2           0.42
29              2           2           0.31

我希望使用 statsmodels 确定这两个条件对因变量的影响,考虑到每个参与者回答两次并且可能存在交互作用的事实。我的期望是我会使用重复测量方差分析选项,如下所示:

from statsmodels.stats.anova import AnovaRM

aovrm = AnovaRM(data, 'dependent_var', 'participant_ID', within=['Condition_1'], between = ['Condition_2'], aggregate_func= 'mean').fit()

但是,当我这样做时,出现以下错误:

NotImplementedError: Between subject effect not yet supported!

有没有人知道不涉及学习 R 的解决方法?我的直觉是尝试混合线性模型,但我不知道如何解释每个参与者回答两次的事实。

如果这真的是一个交叉验证问题,我们深表歉意!

您可以试试 pingouin 包:https://pingouin-stats.org/index.html

它似乎涵盖了尚未在 statsmodels 中完全实现的混合方差分析。