[R-sig-ME] Dropping correlations bet. random-effects in lme4 syntax
Simon Harmel
@|m@h@rme| @end|ng |rom gm@||@com
Sat Oct 3 19:24:34 CEST 2020
Thanks for the additional information about the use of `0+` in the context
of categorical variables:)
So, by splitting the specification of the grouping variable like:
lmer(y ~ A * B * C + (A * C | group) + (B|group) , data = data)
I get the below correlation matrix. So, here we have created 2 different
intercepts, one for each "split" of the same grouping variable, right?
I ask this because B has no correlation with the first split's (intercept)
but it has a singular correlation with the second split's (intercept). The
output looks confusing to a novice like me.
(Intercept) A C A:C (Intercept) B
(Intercept) 1.000 -0.794 -0.195 0.953 0 0
A -0.794 1.000 0.278 -0.854 0 0
C -0.195 0.278 1.000 0.028 0 0
A:C 0.953 -0.854 0.028 1.000 0 0
(Intercept) 0.000 0.000 0.000 0.000 1 -1
B 0.000 0.000 0.000 0.000 -1 1
On Sat, Oct 3, 2020 at 11:52 AM Phillip Alday <phillip.alday using mpi.nl> wrote:
> I have no idea what 0* means, but 0+ means "suppress the intercept" (which
> has knock-on effects for categorical variables and whether they're
> represented in the model as (nlevels-1) contrasts or nlevels).
>
> For the other things: try it out. The output of summary(m1) will show you
> which levels and correlations were kept.
> On 03/10/2020 18:44, Simon Harmel wrote:
>
> Thanks Phillip. What would be the meaning of placing `0 +` next to any of
> the random effects (e.g., B) as shown in m2?
>
> m1 <- lmer(y ~ A * B * C + (A * C | group) + (B|group) , data = data)
>
> m2 <- lmer(y ~ A * B * C + (A * 0+ B * C | group), data = data)
>
> On Sat, Oct 3, 2020 at 11:33 AM Phillip Alday <phillip.alday using mpi.nl>
> wrote:
>
>> You can split the specification of your grouping to achieve this, at
>> least in part:
>>
>> lmer(y ~ A * B * C + (A * C | group) + (B|group) , data = data)
>>
>> Note that life gets tricky with the interaction terms.
>>
>> Phillip
>>
>> On 03/10/2020 06:35, Simon Harmel wrote:
>> > Hello all,
>> >
>> > I know to drop all correlations among all level-1 predictors in the
>> random
>> > part of an lmer() call, I can use `||`. But I was wondering how to drop
>> > correlations (a) "individually" or (b) "in pairs"?
>> >
>> > Example of (a) is how to drop the correlation of B with others (A & C)?
>> > Example of (b) is how to drop the correlation between B and C?
>> >
>> > lmer(y ~ A * B * C + (A * B * C || group), data = data)
>> >
>> > Thanks,
>> > Simon
>> >
>> > [[alternative HTML version deleted]]
>> >
>> > _______________________________________________
>> > R-sig-mixed-models using r-project.org mailing list
>> > https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models
>>
>
[[alternative HTML version deleted]]
More information about the R-sig-mixed-models
mailing list