Stata中使用xtgee拟合GEE后如何检验残差自相关?
Stata xtgee拟合Logit GEE模型的残差自相关检验方案
误区纠正
你之前无法直接获取残差、手动计算残差不符合预期,是两个原因导致的:
xtgee的predict命令没有默认的残差输出选项,需要明确指定残差类型- 广义线性模型不适合直接用原始残差(观测值-预测值)做自相关检验,二项分布的原始残差方差随预测值变动,尺度不一致,检验结果可靠性低
操作步骤
第一步:提取适配检验的标准化残差
拟合完xtgee模型后,提取皮尔逊残差(最常用作自相关检验的残差类型)代码如下:
* 示例模型拟合 webuse nlswork, clear xtset idcode year xtgee collgrad i.union, link(logit) fam(binomial) corr(exch) eform robust * 提取皮尔逊残差 predict pearson_resid, r(pearson) * 也可以提取偏差残差,替换参数为r(deviance)即可
第二步:自相关检验
提供两种常用检验方案:
方案1:基于工作相关矩阵的直接判断
GEE模型本身会估计组内相关结构,拟合完成后执行以下命令即可输出估计的组内相关矩阵:
estat wcorr
如果你拟合模型时指定的是独立相关结构corr(ind),输出的相关系数显著不为0就说明存在自相关;如果指定的是可交换/自相关结构,输出的相关系数大小直接反映了自相关强度。
方案2:基于残差的检验
- 图形化检验:执行以下命令查看残差的自相关、偏自相关系数图,直观判断自相关阶数
* 合并看整体自相关 corrgram pearson_resid, lags(5) * 分个体看组内自相关 ac pearson_resid, by(idcode) - 统计显著性检验:将滞后1期残差作为控制项加入原模型重新拟合,若滞后残差项系数显著不为0则证明存在自相关:
* 生成滞后1期残差 bysort idcode: gen L_pearson_resid = L.pearson_resid * 重新拟合模型检验显著性 xtgee collgrad i.union L_pearson_resid, link(logit) fam(binomial) corr(exch) eform robust
内容的提问来源于stack exchange,提问作者Bicep
相关产品推荐
相关产品推荐

