多语言展示
当前在线:458今日阅读:103今日分享:49

SPSS方差分析误差项中存在零自由度error term

使用SPSS做两因素方差分析,按照教材的做法一步一步无任何错误,可是到了出结果的时候出现警告:Post hoc tests are not performed for 品牌 because error term has zero degrees of freedom.也就是说误差项的自由度为0。怎么会为零呢?按照教材说法,误差项的自由度为因素A的自由度-1与因素B的自由度-1后相乘,应该等于12。
工具/原料

SPSS软件

方法/步骤
1

后来从这里获得了启发:http://zhidao.baidu.com/link?url=RY7xuKESw-lQ5pKfU_Ip-AX7i_MzB4a4Wk9OwurIrT1rxUPhc2gA0z78XREKeupZmX27v4boPZMcFO0Nr-eQr6hpGp7MeREFEkOMQuNOrkW,但是说得很不清楚,自己摸索,再比较其它案例明白了症状所在:SPSS中的误差项自由度不是像很多教材那样计算的,而是设定为“校正模型自由度-各项自由度总计”。以双因素方差分析为例,如果A因素有4个水平则它对应的平方误差项自由度为4-1,B因素有5个水平,则它对应的平方误差项自由度为5-1,则A*B交互项的自由度为3*4=12;全加起来就有19了。此时如果总观测值只有20个(也就是每个A*B项只对应一个观测值),则模型总自由度为20-1=19,此时误差项的自由度为:误差项自由度=校正模型自由度-各项自由度总计=19-19=0误差项自由度为零,没法计算MSE,自然无法计算F值,分析不下去了。所以此时不能做考虑交互作用的方差分析,只能做不考虑交互效应的(也就是只考虑主效应)的方差分析,使得误差项自由度为19-3-4=12。

2

SPSS菜单作双因素方差分析的过程是:Analyze→General Linear Model→Univariate,在弹出界面中,因变量加入dependant variable框,自变量两个加入fixed factor框,还可以点击post hoc进行事后比较设置。

3

教材到这里就告诉我们直接点击OK启动了,但是它漏了重要一点,先不要点OK,而是点击Model进入模型设置

4

进入后不要选“full factorial”(全因子)而应该选“custom”,然后把两个因子添加到右边框中。全因子的含义就是是考虑两因子各自单独的效应和交互的的效应(如果有三个因子,那就还有三因子共同的效应),就是它导致我所做这个案例的误差项自由度为零!。至于那个bulid term(s)标签下方的下拉框是用来指定交互效应的,忽略。

5

continue退出Model对话框之后OK即可,看到输出界面非常正常,error项的自由度是12而不是0,YEAH!感想:为解决这个问题我找了7、8本SPSS教材,楞是没有一本书提到这个问题,导致我按部就班的实验就是做不出来,唉,太不负责任了吧?在网上搜索了很久,绝大多数回答都是不知所云,只有一个稍微靠谱的(刚才提到了),特表示感谢“sht_307413”网友!至今未找到SPSS如此计算自由度的依据或说明,跟所有的教材都不一样...

推荐信息