具有多项式/样条的 GLMM 事后分析

问题描述 投票:0回答:1

我正在尝试对我的 GLMM 进行事后分析,但我不确定我做得是否正确。

我使用以下代码测试连续变量 X 和 Y 对二元响应 Z 的影响,并将我的 ID 作为随机效应:

model <- glmer(Z ~ ns(X, 3) * ns(Y, 2) + (1 | id),
           data = df,
           family = binomial(link = "logit"),
           control = glmerControl(optimizer = "bobyqa", optCtrl = list(maxfun = 1e+05)),
           nAGQ = 1)

完成“经典”分析后,我想知道当 Y = 0 时是否有差异。这就是我所做的:

emm <- emtrends(model, ~ X * Y, var = "X",
            max.degree = 3,
            at = list(Y = c(0)))
test(emm, adjust = "bonferroni")

这给了我:

    degree = linear:
         Y        X        X.trend      SE  df z.ratio p.value
        0    -5.79       -0.18800 0.06186 Inf  -3.039  0.0024

degree = quadratic:
         Y        X        X.trend      SE  df z.ratio p.value
        0    -5.79        0.01569 0.00518 Inf   3.030  0.0024

degree = cubic:
         Y        X        X.trend      SE  df z.ratio p.value
        0    -5.79        0.00295 0.00143 Inf   2.067  0.0388

我由此推断,Y = 0 条件似乎确实存在差异。为了更进一步,我选择了一些 X 值,我想在这种情况下进行两两比较:

emm <- emtrends(model, pairwise ~ X * Y, var = "X",
                max.degree = 3,
                at = list(X = c(-16, -14, -12, -10, -8, -6, -4, -2, 0, 2),
                          Y = c(0)))

test(emm, adjust = "bonferroni")

有什么好处吗?

r lme4 emmeans
1个回答
0
投票

在第一个分析中,您应该澄清这些估计值都是以 X 等于其平均值为条件的(它确实在输出中显示了 X,但仍然如此)。此外,这些不是差异,而是线性、二次和三次趋势的估计。

在第二个分析中,您最终将进行大量比较(其中 30*29/2 = 435),我认为对于大多数读者来说,要理解您正在比较不同点的趋势和/或不同程度。小心你的愿望。我强烈建议重新思考在这里沟通真正重要的是什么。由于您正在安装光滑的表面,我希望您尝试以图形方式显示它。如果您想进行比较,比较拟合值(又名 emmeans)而不是趋势不是更有意义吗?

© www.soinside.com 2019 - 2024. All rights reserved.