LME中使用的varIdent函数是否正常工作?

时间:2014-06-08 13:25:48

标签: r models

如果有人能帮我解决这个问题,我会很高兴的。我有重复测量设计的数据,我们测试了感染前后鸟类(time.dep)的反应(exper)。我们还有FL(燃料负荷,瘦体重百分比),脂肪评分和组(实验与对照)作为解释变量。我决定使用LME,因为残差的分布不会偏离正常。但是残差的同质性存在问题。 “之前”和“之后”以及脂肪水平之间的组的差异显着不同(分别为Fligner-Killeen测试,p=0.038p=0.01

   ring    group fat time.dep  FL   exper
1 XZ13125     E   4     0.36 16.295 before
2 XZ13125     E   3     0.32 12.547  after
3 XZ13126     E   3     0.28  7.721 before
4 XZ13127     C   3     0.32  9.157 before
5 XZ13127     C   3     0.40 -1.902  after
6 XZ13129     C   4     0.40 10.382 before

在我选择模型的随机部分(随机截距(~1|ring)后,我已经为“fat”和“exper”(varComb(varIdent(form=~1|fat), varIdent(form=~1|exper))应用了权重参数。现在标准化残差与拟合的图看起来更好,但我仍然得到这些变量的同质性的违反(在fligner测试中相同的值)。我做错了什么?

1 个答案:

答案 0 :(得分:3)

lme中的一个常见陷阱是默认是给出原始残差,即不针对任何异方差性(weights)或相关性(correlation)子模型进行调整可能已被使用过。来自?residuals.lme

  

type :指定残差类型的可选字符串             要使用的。如果'“响应”',默认为“原始”             使用残差(观察拟合);否则,如果'“pearson”',             标准化残差(原始残差除以             使用相应的标准误差;否则,如果             ''标准化'',标准化残差(标准化             残差乘以逆平方根因子             使用估计的误差相关矩阵。局部             使用参数匹配,因此只使用第一个字符             需要提供。

因此,如果您希望根据异方差性校正残差(包含在模型中),则需要type="pearson";如果您希望对它们进行相关性校正,则需要type="normalized"