为什么在我的混合效应模型中添加协变量后交互项保持不变?

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

我的数据结构如下:

  1. seek_score(因变量,连续)和 sek_src(因子)是受试者内变量。
  2. 人和年龄是受试者间变量(都是连续的)

这是我的 lmer 代码

m.pers <- lmer(seek_score ~ pers * sek_src + (1 | id), data = cln_long_sek)
m1.pers <- lmer(seek_score ~ pers * sek_src + (1 | id)+age, data = cln_long_sek)

我注意到,无论我是否在模型中包含协变量年龄(或其他协变量),交互项 pers * sek_src 都保持不变。我还用其他变量测试了这种行为,交互结果不受影响。

为什么添加协变量不会影响交互项?这是混合效应模型中的预期行为,还是我在解释中遗漏了一些东西?

r lme4 mixed-models
1个回答
0
投票

这绝对不是混合模型的普遍特征。在年龄协变量与其他协变量正交的情况下,添加它可能不会对交互作用产生“太大”影响,但会产生非零影响。模拟示例: set.seed(101) dd <- data.frame(pers = rnorm(1000), age = rnorm(1000), sek_src = rep(factor(1:4), length.out = 1000), id = rep(factor(1:250), each = 4)) dd$seek_score <- simulate( ~ pers * sek_src + (1 | id) +age, newdata = dd, ## parameters chosen fairly haphazardly (make theta ## large enough to avoid a singular fit) newparams = list(beta = c(0, 1, 1, 1, 1, 2, 0.25, 1, 1), theta = 2, sigma = 1), family = gaussian)[[1]] m1 <- lmer(seek_score ~ pers * sek_src + (1 | id), data = dd) m2 <- update(m1, . ~ . + age)

coef(summary(m1))
               Estimate Std. Error  t value
(Intercept)   0.2830350  0.1893472 1.494793
pers          0.9475097  0.1669076 5.676851
sek_src2      0.7828623  0.2082464 3.759308
sek_src3      1.0493780  0.2080385 5.044153
sek_src4      1.1716817  0.2096265 5.589377
pers:sek_src2 0.2911548  0.2284175 1.274661
pers:sek_src3 0.8660519  0.2457152 3.524616
pers:sek_src4 1.1805433  0.2459779 4.799389
coef(summary(m2))
               Estimate Std. Error   t value
(Intercept)   0.2319797 0.14104349  1.644739
pers          0.9896704 0.07201091 13.743340
sek_src2      1.0643268 0.08686656 12.252433
sek_src3      1.0167706 0.08664443 11.734979
sek_src4      1.2423105 0.08736657 14.219517
age           1.9939224 0.03333156 59.820850
pers:sek_src2 0.2523057 0.09881783  2.553240
pers:sek_src3 0.9910948 0.10595530  9.353895
pers:sek_src4 1.0737888 0.10587625 10.141923
	
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.