Python统计模型中的双向方差分析得出的平方和与SP不同

2024-05-16 14:45:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习如何使用Python进行统计分析,在研究如何使用statsmodels执行双向方差分析时,我发现Python代码生成的值有点异常。比较输出,可以看到Python和SPSS/Graphpad的SS_Factor_1值和调整后的R2是不同的。此外,虽然SPSS和Graphpad计算的是第三类平方和,但当typ=3时,statsmodel方差分析输出是最差的,而typ=1或2则更接近。他们为什么不同意?为什么typ=3最不一样?在

我的问题与this one非常相似,但没有得到回答。我的名声也太低了,不能评论这个问题。在

第二类平方和Python代码:

formula = 'dependent_variable ~ C(factor_1) * C(factor_2)'
model = ols(formula, data=df_freq_time).fit()
aov_table = anova_lm(model, typ=2)
aov_table

Python输出:output

III型平方和Python代码:

^{pr2}$

Python输出:output

对于上述方差,R2=0.722,调整R2=0.694。在

SPSS双向方差分析结果:SPSS output ANOVA table

Graphpad Prism双向方差分析结果:Graphpad output ANOVA table


Tags: 代码modeltable双向ss代码生成r2spss