对数线性模型基本已成为处理高维列联表数据的标准模型。

考虑每个个体被分配到每个格子的概率足够小,并且相互独立,则第个格子的发生频数服从参数为的Poisson分布,即

其中受到各分类因素影响:

由此可以构造似然函数对模型进行拟合。

模型拟合评价可以采用Pearson卡方值(就是卡方检验的卡方值,只不过理论频数是模型的估计频数 ),或者似然比卡方值(The likelihood-ratio chi-square statistic),这两种差异不大。当对应P>0.05时,可以认为模型拟合效果较好,模型中的因素能较好解释分类结果。

对数线性模型一般从所谓的饱和模型开始,寻找包含因子少,解释效果好的拟合模型。饱和模型包含所有分类因素及因素间的全部交互作用和高阶交互。此时模型自由度为0,模型拟合误差为0。模型回归系数可以给出对应因素对分类结果影响,由此可以提示下一步分析模型。也可以直接对所有可能模型进行拟合,最后采用AIC准则选择合适的解释模型。

下面示例数据是一个有关乳腺癌的研究,是一个3维列联表。




模型提示:诊断中心与细胞核异型,细胞核异型与存活状况可能存在关联。

下面是SPSS参数估计(已删除被SPSS列为对照的空行):


SPSS模型提示:诊断中心与细胞核异型存在关联。

事实上,对该数据,采用AIC准则的最优模型为:中心+异型+存活+中心*存活+异型*存活。

此时ExcelStat对最优模型的拟合结果:


对应SPSS结果:


从拟合上来说两者并无差异,事实上,两者的估计值是完全相同的。导致模型参数估计差异的原因主要是设计矩阵构造导致高阶交互系数在模型中代表的实际意义不一样所致。

如果把所有水平赋值对换:



水平赋值对换后,ExcelStat的系数并未改变(符号可能会改变),对各个系数的评价也没有变化(Wald P值,对应SPSS的Z P值,SPSS的Z统计量就是Wald统计量的平方根)。但是SPSS发生了变化。产生这种变化的原因是设计矩阵结构所致。构造设计矩阵时,对主效应,两者无差异;对交互作用,ExcelStat采用一般线性回归分析中交互作用构建的特殊乘法,而SPSS则直接采用常规意义的数字乘法。

ExcelStat与SPSS主效应估计比较:




总的说来,ExcelStat和SPSS的设计矩阵构建模式都只会体现在回归系数差异上,对模型的总体拟合效果不会存在差异。事实上,ExcelStat对广义线性模型因子处理和一般线性模型的因子处理是完全相同的。后面的广义线性模型将不再讨论ExcelStat与SPSS间参数估计的差异,就如前所述,参数估计差异不会导致模型总体效果评价产生差异。

(待续...)

ExcelStat下载: Excel加载宏ExcelStat.xla


点赞、收藏、关注、转发!!!