假设我们有一个模型
mod <- Y ~ X*Condition + (X*Condition|subject)
# Y = logit variable
# X = continuous variable
# Condition = values A and B, dummy coded; the design is repeated
# so all participants go through both Conditions
# subject = random effects for different subjects
summary(model)
Random effects:
Groups Name Variance Std.Dev. Corr
subject (Intercept) 0.85052 0.9222
X 0.08427 0.2903 -1.00
ConditionB 0.54367 0.7373 -0.37 0.37
X:ConditionB 0.14812 0.3849 0.26 -0.26 -0.56
Number of obs: 39401, groups: subject, 219
Fixed effects:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 2.49686 0.06909 36.14 < 2e-16 ***
X -1.03854 0.03812 -27.24 < 2e-16 ***
ConditionB -0.19707 0.06382 -3.09 0.00202 **
X:ConditionB 0.22809 0.05356 4.26 2.06e-05 ***
在这里,我们观察到奇异拟合,因为截距和 x 随机效应之间的相关性为 -1。现在,根据这个有用的链接,处理这个模型的一种方法是去除高阶随机效应(例如,X:ConditionB),看看在测试奇点时这是否会有所不同。另一种是使用贝叶斯方法,例如使用blme
包来避免奇异性。
首选方法是什么,为什么?
我问这个是因为使用第一个或第二个会导致不同的结果 - 在第一种情况下,我将删除 X:ConditionB 随机效应,并且无法估计 X 和 X:ConditionB 随机效应之间的相关性。另一方面,使用blme
允许我保留 X:ConditionB 并估计给定的相关性。当我可以使用贝叶斯方法估计所有内容时,我看不出为什么我什至应该使用非贝叶斯估计并在出现奇异拟合时消除随机效应。
有人可以向我解释使用这两种方法来处理奇异拟合的好处和问题吗?
谢谢你。