Я понимаю, что мы используем модели случайных эффектов (или смешанных эффектов), когда считаем, что некоторые параметры модели изменяются случайным образом в зависимости от некоторого фактора группировки. У меня есть желание подогнать модель, в которой ответ был нормализован и центрирован (не идеально, но довольно близко) по группирующему фактору, но независимая переменная x
никак не была скорректирована. Это привело меня к следующему тесту (с использованием сфабрикованных данных), чтобы убедиться, что я найду эффект, который искал, если он действительно был там. Я запустил одну модель смешанных эффектов со случайным перехватом (для групп, определенных f
) и вторую модель с фиксированным эффектом с фактором f в качестве предиктора с фиксированным эффектом. Я использовал пакет R lmer
для модели со смешанным эффектом и базовую функциюlm()
для модели с фиксированным эффектом. Ниже приведены данные и результаты.
Обратите внимание, что y
, независимо от группы, она колеблется около 0. И это x
зависит от y
группы внутри, но значительно различается в разных группах, чемy
> data
y x f
1 -0.5 2 1
2 0.0 3 1
3 0.5 4 1
4 -0.6 -4 2
5 0.0 -3 2
6 0.6 -2 2
7 -0.2 13 3
8 0.1 14 3
9 0.4 15 3
10 -0.5 -15 4
11 -0.1 -14 4
12 0.4 -13 4
Если вы заинтересованы в работе с данными, вот dput()
вывод:
data<-structure(list(y = c(-0.5, 0, 0.5, -0.6, 0, 0.6, -0.2, 0.1, 0.4,
-0.5, -0.1, 0.4), x = c(2, 3, 4, -4, -3, -2, 13, 14, 15, -15,
-14, -13), f = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L,
4L, 4L, 4L), .Label = c("1", "2", "3", "4"), class = "factor")),
.Names = c("y","x","f"), row.names = c(NA, -12L), class = "data.frame")
Подгонка модели смешанных эффектов:
> summary(lmer(y~ x + (1|f),data=data))
Linear mixed model fit by REML
Formula: y ~ x + (1 | f)
Data: data
AIC BIC logLik deviance REMLdev
28.59 30.53 -10.3 11 20.59
Random effects:
Groups Name Variance Std.Dev.
f (Intercept) 0.00000 0.00000
Residual 0.17567 0.41913
Number of obs: 12, groups: f, 4
Fixed effects:
Estimate Std. Error t value
(Intercept) 0.008333 0.120992 0.069
x 0.008643 0.011912 0.726
Correlation of Fixed Effects:
(Intr)
x 0.000
Я отмечаю, что компонент дисперсии перехвата оценивается в 0 и, что важно для меня, x
не является значимым предиктором y
.
Далее я подгоняю модель с фиксированным эффектом f
в качестве предиктора вместо коэффициента группирования для случайного пересечения:
> summary(lm(y~ x + f,data=data))
Call:
lm(formula = y ~ x + f, data = data)
Residuals:
Min 1Q Median 3Q Max
-0.16250 -0.03438 0.00000 0.03125 0.16250
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.38750 0.14099 -9.841 2.38e-05 ***
x 0.46250 0.04128 11.205 1.01e-05 ***
f2 2.77500 0.26538 10.457 1.59e-05 ***
f3 -4.98750 0.46396 -10.750 1.33e-05 ***
f4 7.79583 0.70817 11.008 1.13e-05 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.1168 on 7 degrees of freedom
Multiple R-squared: 0.9484, Adjusted R-squared: 0.9189
F-statistic: 32.16 on 4 and 7 DF, p-value: 0.0001348
Теперь я замечаю, что, как и ожидалось, x
является значительным предиктором y
.
Что я ищу, так это интуиция в отношении этой разницы. В чем мое неправильное мышление? Почему я неправильно ожидаю найти значимый параметр для x
обеих этих моделей, а на самом деле вижу его только в модели с фиксированным эффектом?
x
переменная не является значимой. Я подозреваю, что это тот же результат (коэффициенты и SE), который вы бы запустилиlm(y~x,data=data)
. У меня больше нет времени на диагностику, но я хотел указать на это.