lme4中每个固定效应组随机效应的不同方差-协方差矩阵

机器算法验证 r 混合模式 lme4-nlme 协方差矩阵
2022-04-11 12:59:26

考虑以下lme4模型:Y ~ X*Condition + (1+X|Trial).

这里Trial嵌套在一个二进制文件Condition中。该模型计算随机截距的方差、随机斜率的方差以及随机截距和随机斜率的相关性。我想计算所有这些值,但分别计算条件 A 和条件 B。我该怎么做?


额外的实验细节

我们进行的实验是一个二选一的任务,人们必须选择正确的答案。任务中有两个条件(条件 A 和 B),其中一个会使任务变得更难。所有参与者都经历了条件 A 和条件 B 的试验集。所有试验都编码在一个名为Trial的变量中- A 试验被命名为 A1、A2、A3 和 B 试验 B1、B2、B3... 我们想要从 X(连续变量)预测 Y(二项式变量),同时控制不同试验中的随机效应。

1个回答

感谢@amoeba 并在此处使用@BenBolker 的简短评论

dummy()通过使用辅助函数构造一个指示变量以乘以各个感兴趣的水平,可以稍微笨拙地实现扩展,例如允许每个(固定效应)组的随机效应的不同残差或不同方差-协方差矩阵。

我们找到了问题的根源。

解决方案如下:

Y ~ X*Condition + 
    (X*Condition | Subject) + 
    (0 + dummy(Condition, "A") + X:dummy(Condition, "A") | Trial) + 
    (0 + dummy(Condition, "B") + X:dummy(Condition, "B") | Trial) 

summary(model)随机效应产生

Groups  Name                        Variance Std.Dev. Corr             
 subject (Intercept)                 0.89343  0.9452                    
         X                           0.11695  0.3420   -0.85            
         ConditionB                  0.66731  0.8169   -0.33  0.06      
         X:ConditionB                0.07391  0.2719    0.34 -0.05 -0.47
 Trial   dummy(Condition, "A")       0.63854  0.7991                    
         dummy(Condition, "A"):X     0.09372  0.3061   -0.76            
 Trial.1 dummy(Condition, "B")       0.88833  0.9425                    
         dummy(Condition, "B"):X     0.12175  0.3489   -0.60    

这现在很有意义,因为只有可以计算的相关性是在特定条件下的截距和斜率之间(因为它们是针对相同的试验估计的)。条件之间的相关性是毫无意义的。

此外,coef(model)$Trial现在显示逻辑值:

      dummy(Condition, "A")   dummy(Condition, "A"):X    dummy(Condition, "B")   dummy(Condition, "B"):X      (Intercept)          X           ConditionB    X:ConditionB
A1                0.9198822                 0.0209849                        0                         0       2.703544   -0.9929765          -0.07102448        0.2415836
A2               -1.3029020                 0.3894812                        0                         0       2.703544   -0.9929765          -0.07102448        0.2415836
A3                1.1294702                -0.2475288                        0                         0       2.703544   -0.9929765          -0.07102448        0.2415836
B1              0.000000000              0.0000000000               1.21725268              -0.305314643       2.703544   -0.9929765          -0.07102448        0.2415836
B2              0.000000000              0.0000000000               0.88317976              -0.209529267       2.703544   -0.9929765          -0.07102448        0.2415836
B3              0.000000000              0.0000000000               0.27859781              -0.065708851       2.703544   -0.9929765          -0.07102448        0.2415836
  1. 所有试验的固定效果相同
  2. dummy(Condition, "A") 截距和 dummy(Condition, "A"):X 斜率仅针对条件 A 计算,在条件 B 试验中它们估计为 0,反之亦然。

注意当为此目的指定随机效应时,重要的是:

  • 独立指定不同试验组的随机效应,而不是在相同的|Trial. 如果您不这样做,lme4将估计所有试验的随机效应,而不仅仅是给定条件。
  • 包括 0,以防止lme4在所有试验中包括一般随机截距。