我一直在尝试计算我在 R 中的 lmer 和 glmer 的边际均值。我找到了 emmeans 函数,我一直在尝试理解它并将其应用于我的模型。我发现很难获得交互的方法,所以我只从加法预测器开始,但是该函数不能像示例中所示的那样工作(例如,这里https://cran.r-project.org /web/packages/emmeans/vignettes/sophisticated.html )
emmeans(Oats.lmer, "nitro")
nitro emmean SE df lower.CL upper.CL
0.0 78.89207 7.294379 7.78 61.98930 95.79484
0.2 97.03425 7.136271 7.19 80.25029 113.81822
0.4 114.19816 7.136186 7.19 97.41454 130.98179
0.6 124.06857 7.070235 6.95 107.32795 140.80919
我得到的是:
emmeans(model2, "VariableA")
VariableA emmean SE df lower.CL upper.CL
0.4657459 2649.742 120.8955 19.07 2396.768 2902.715
只有一行,变量被平均而不是分成0和1(这是数据集中的值,也许问题是它是分类的?)我正在运行的模型是:
model2 = lmer (rt ~ variableA + variableB + (1 |participant) + (1 |sequence/item), data=memoryData, REML=FALSE)
编辑:数据文件很大,我不知道如何从中提取有用的信息,但结构如下:
> str(memoryData)
'data.frame': 3168 obs. of 123 variables:
$ participant : int 10 10 10 10 10 10 10 10 10 10 ...
$ variableA : int 1 1 1 1 1 1 1 1 1 1 ...
$ variableB : int 1 1 1 1 1 1 1 1 1 1 ...
$ sequence: int 1 1 1 1 1 1 1 1 1 1 ...
$ item : int 25 26 27 28 29 30 31 32 33 34 ...
$ accuracy : int 1 1 1 1 1 1 0 1 1 1 ...
$ rt : num 1720 1628 1728 2247 1247 ...
为什么该功能对我不起作用?作为另一个问题,当我包含变量 A 和 B 之间的交互时,有没有办法获得这些方法?
编辑2:好的,当我将其更改为因子时它确实有效,我想我的方法不正确。但是我仍然不确定当有交互时如何计算它?因为使用这种方法,R 说“注意:由于参与交互,结果可能会产生误导”