# Mixed effects logistic regression type model in R - GLMER problems

I'm doing a project where I have students listen to 7 stimuli (all students listen to the same 7), and then say for each one whether that stimuli sounds more like PALM or TRAP. There are two groups of students, groupA and groupB (GroupA is younger than GroupB). I want to measure if the difference between their groups in their selection of choice PALM or TRAP across the stimuli is significant or not.

I've been told to do a mixed effects logistic regression type model in R, but I've not used glmer much and I find it hard to use. The only way I could get it to work was to put in the SUBJECT as a slope (?), but that doesn't seem right to me and the result is odd. I would really appreciate any suggestions to neaten the code for what I'm trying to do (or possible alternatives).

My current code in R is this, where CHOICE = outcome resulting in choice of either PALM or TRAP, STIMULUS = stimuli 1 through to 7, GROUP = GroupA or GroupB, and SUBJECT is the participant ID (although I wondered if I should even keep this in) :

table <- read.delim("rawdata2.txt", stringsAsFactors = TRUE)
table

summary(table)

library (lmerTest)
library (lme4)

table$GROUP <- as.factor(table$GROUP)
table$STIMULUS <- as.numeric(table$STIMULUS)
table$CHOICE <- as.factor(table$CHOICE)
table$SUBJECT <- as.numeric(table$SUBJECT)

contrast <- cbind(c(-0.5, +0.5))
colnames(contrast) <- c("-PALM+TRAP")
contrasts (table$CHOICE) <- contrast contrast <- cbind(c(-0.5, +0.5)) colnames(contrast) <- c("-A+B") contrasts (table$GROUP) <- contrast

#Fixed effects = STIMULUS, GROUP
#Random effects = CHOICE
# Within-participants = STIMULUS, CHOICE
# Between-Paticipants = GROUP, SUBJECT
# Running into errors if I leave out SUBJECT, but should it even be there?

model <- glmer(CHOICE ~ STIMULUS * GROUP + (STIMULUS | SUBJECT) + (STIMULUS * GROUP | SUBJECT), data = table, family = binomial)
model


Response in the console:

Generalized linear mixed model fit by maximum likelihood (Laplace Approximation) ['glmerMod']
Family: binomial  ( logit )
Formula: CHOICE ~ STIMULUS * GROUP + (STIMULUS | SUBJECT) + (STIMULUS *      GROUP | SUBJECT)
Data: table
AIC       BIC    logLik  deviance  df.resid
438.0945  507.8760 -202.0473  404.0945       431
Random effects:
Groups    Name               Std.Dev. Corr
SUBJECT   (Intercept)        2.9190
STIMULUS           0.5851   -1.00
SUBJECT.1 (Intercept)        2.7501
STIMULUS           0.5386   -1.00
GROUP-A+B          4.2917    0.57 -0.56
STIMULUS:GROUP-A+B 0.8327   -0.56  0.55 -0.99
Number of obs: 448, groups:  SUBJECT, 16
Fixed Effects:
(Intercept)            STIMULUS           GROUP-A+B  STIMULUS:GROUP-A+B
-4.2495              0.9265              1.2539             -0.2695
optimizer (Nelder_Mead) convergence code: 0 (OK) ; 0 optimizer warnings; 2 lme4 warnings 03


I suspect that there is either extremely small variation of STIMULUS within SUBJECT, or that the random structure you have specified is too complex to be supported by the data.

Also, it would appear tha GROUP does not vary within SUBJECT, so if you include GROUP as part of a random slope (ie STIMULUS * GROUP) then you are asking for trouble.

The first step should be to fit this model:

CHOICE ~ STIMULUS * GROUP + (1 | SUBJECT)


If this converges without warning or error, then you could try introducing random slopes for STIMULUS:

CHOICE ~ STIMULUS * GROUP + (STIMULUS | SUBJECT)


but don't be surprised if you obtain a singular fit (meaning that random slopes, correlated with random intercepts are not supported by the data). If so then the next model would be to fit slopes uncorrelated with intercepts:

CHOICE ~ STIMULUS * GROUP + (STIMULUS || SUBJECT)


And if this doesn't work, then just go back to the random interepts only model.

Alternatively, since all students listen to the same 7 stimuli, you could fit crossed random effects:

CHOICE ~ GROUP + (1 | STIMULUS) + (1 | SUBJECT)


and if this converges without warning or error I would suggest this model, provided that you are not specifically interested in the interaction between GROUP and STIMULI.

• Does this answer your question ? If so please consider marking it as the accepted answer. If not, please let us know why. Also, if you haven't already, please consider upvoting it. Commented Jul 24, 2021 at 12:06