[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