Analyses
df_acc_noout_experimental = subset(df_acc_noout, block != "practice")
df_acc_noout_experimental$age = as.factor(as.character(df_acc_noout_experimental$age))
distinct(df_acc_noout_experimental[c("participant","age")]) %>%
{table(.$age)}
##
## 3 4
## 8 6
ratio_condition_model <- glmer(accuracy ~
+ numRatio * block*age+
+ (1|participant), data = df_acc_noout_experimental, family = binomial, control = glmerControl(optimizer = "bobyqa"))
summary(ratio_condition_model)
## Generalized linear mixed model fit by maximum likelihood (Laplace Approximation) ['glmerMod']
## Family: binomial ( logit )
## Formula: accuracy ~ +numRatio * block * age + +(1 | participant)
## Data: df_acc_noout_experimental
## Control: glmerControl(optimizer = "bobyqa")
##
## AIC BIC logLik deviance df.resid
## 845.7 904.4 -409.9 819.7 659
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -4.110 -0.956 0.440 0.794 1.457
##
## Random effects:
## Groups Name Variance Std.Dev.
## participant (Intercept) 0.112 0.335
## Number of obs: 672, groups: participant, 14
##
## Fixed effects:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 0.1918 0.7634 0.25 0.80
## numRatio -0.0277 0.3216 -0.09 0.93
## blockblock2 0.1193 1.0641 0.11 0.91
## blockblock3 -0.7945 1.0844 -0.73 0.46
## age4 -0.3030 1.1931 -0.25 0.80
## numRatio:blockblock2 0.1235 0.4598 0.27 0.79
## numRatio:blockblock3 0.0784 0.4652 0.17 0.87
## numRatio:age4 0.6867 0.5910 1.16 0.25
## blockblock2:age4 -0.9363 1.7241 -0.54 0.59
## blockblock3:age4 -1.2003 1.7492 -0.69 0.49
## numRatio:blockblock2:age4 0.3709 0.9028 0.41 0.68
## numRatio:blockblock3:age4 1.1849 0.9137 1.30 0.19
##
## Correlation of Fixed Effects:
## (Intr) numRat blckb2 blckb3 age4 nmRt:2 nmRt:3 nmRt:4 blc2:4 blc3:4 nR:2:4
## numRatio -0.960
## blockblock2 -0.700 0.689
## blockblock3 -0.690 0.678 0.492
## age4 -0.640 0.614 0.449 0.441
## nmRt:blckb2 0.671 -0.700 -0.970 -0.471 -0.430
## nmRt:blckb3 0.666 -0.694 -0.475 -0.971 -0.426 0.483
## numRatio:g4 0.522 -0.544 -0.375 -0.369 -0.949 0.381 0.378
## blckblck2:4 0.432 -0.425 -0.618 -0.303 -0.678 0.600 0.293 0.658
## blckblck3:4 0.428 -0.421 -0.306 -0.619 -0.668 0.293 0.602 0.649 0.463
## nmRt:blc2:4 -0.342 0.357 0.495 0.239 0.624 -0.510 -0.245 -0.657 -0.961 -0.426
## nmRt:blc3:4 -0.339 0.354 0.243 0.494 0.617 -0.247 -0.508 -0.649 -0.428 -0.959 0.427
Anova(ratio_condition_model, type=3)
## Analysis of Deviance Table (Type III Wald chisquare tests)
##
## Response: accuracy
## Chisq Df Pr(>Chisq)
## (Intercept) 0.06 1 0.80
## numRatio 0.01 1 0.93
## block 0.83 2 0.66
## age 0.06 1 0.80
## numRatio:block 0.07 2 0.96
## numRatio:age 1.35 1 0.25
## block:age 0.54 2 0.77
## numRatio:block:age 1.71 2 0.43
em=emtrends(ratio_condition_model, pairwise ~ age|block, var="numRatio", mult.name = "age")
summary(em, infer=c(TRUE,TRUE), null=0, type = "response", adjust = "none")
## $emtrends
## block = block1:
## age numRatio.trend SE df asymp.LCL asymp.UCL z.ratio p.value
## 3 -0.0277 0.322 Inf -0.6581 0.603 -0.086 0.9313
## 4 0.6589 0.496 Inf -0.3129 1.631 1.329 0.1839
##
## block = block2:
## age numRatio.trend SE df asymp.LCL asymp.UCL z.ratio p.value
## 3 0.0957 0.329 Inf -0.5481 0.740 0.292 0.7707
## 4 1.1532 0.596 Inf -0.0149 2.321 1.935 0.0530
##
## block = block3:
## age numRatio.trend SE df asymp.LCL asymp.UCL z.ratio p.value
## 3 0.0507 0.335 Inf -0.6055 0.707 0.151 0.8797
## 4 1.9223 0.610 Inf 0.7268 3.118 3.152 0.0016
##
## Confidence level used: 0.95
##
## $contrasts
## block = block1:
## contrast estimate SE df asymp.LCL asymp.UCL z.ratio p.value
## age3 - age4 -0.687 0.591 Inf -1.84 0.472 -1.162 0.2453
##
## block = block2:
## contrast estimate SE df asymp.LCL asymp.UCL z.ratio p.value
## age3 - age4 -1.058 0.681 Inf -2.39 0.277 -1.553 0.1204
##
## block = block3:
## contrast estimate SE df asymp.LCL asymp.UCL z.ratio p.value
## age3 - age4 -1.872 0.695 Inf -3.23 -0.509 -2.691 0.0071
##
## Confidence level used: 0.95
emeans=emmeans(ratio_condition_model, pairwise ~ numRatio|age, mult.name = "age", at=list(numRatio=c(1.5,2,2.5,3)))
## NOTE: Results may be misleading due to involvement in interactions
summary(emeans, infer=c(TRUE,TRUE), null=0, type = "response", adjust = "none")
## $emmeans
## age = 3:
## numRatio prob SE df asymp.LCL asymp.UCL null z.ratio p.value
## 1.5 0.506 0.0531 Inf 0.404 0.609 0.5 0.123 0.9020
## 2.0 0.511 0.0413 Inf 0.431 0.592 0.5 0.278 0.7813
## 2.5 0.516 0.0414 Inf 0.436 0.596 0.5 0.396 0.6918
## 3.0 0.521 0.0532 Inf 0.418 0.623 0.5 0.401 0.6883
##
## age = 4:
## numRatio prob SE df asymp.LCL asymp.UCL null z.ratio p.value
## 1.5 0.694 0.0438 Inf 0.602 0.773 0.5 3.972 0.0001
## 2.0 0.809 0.0352 Inf 0.730 0.868 0.5 6.335 <.0001
## 2.5 0.887 0.0339 Inf 0.802 0.939 0.5 6.085 <.0001
## 3.0 0.936 0.0288 Inf 0.851 0.974 0.5 5.573 <.0001
##
## Results are averaged over the levels of: block
## Confidence level used: 0.95
## Intervals are back-transformed from the logit scale
## Tests are performed on the logit scale
##
## $contrasts
## age = 3:
## contrast odds.ratio SE df asymp.LCL asymp.UCL null z.ratio p.value
## numRatio1.5 / numRatio2 0.980 0.0926 Inf 0.8147 1.180 1 -0.209 0.8341
## numRatio1.5 / numRatio2.5 0.961 0.1816 Inf 0.6638 1.392 1 -0.209 0.8341
## numRatio1.5 / numRatio3 0.942 0.2670 Inf 0.5408 1.642 1 -0.209 0.8341
## numRatio2 / numRatio2.5 0.980 0.0926 Inf 0.8147 1.180 1 -0.209 0.8341
## numRatio2 / numRatio3 0.961 0.1816 Inf 0.6638 1.392 1 -0.209 0.8341
## numRatio2.5 / numRatio3 0.980 0.0926 Inf 0.8147 1.180 1 -0.209 0.8341
##
## age = 4:
## contrast odds.ratio SE df asymp.LCL asymp.UCL null z.ratio p.value
## numRatio1.5 / numRatio2 0.537 0.0882 Inf 0.3889 0.741 1 -3.787 0.0002
## numRatio1.5 / numRatio2.5 0.288 0.0947 Inf 0.1512 0.548 1 -3.787 0.0002
## numRatio1.5 / numRatio3 0.155 0.0762 Inf 0.0588 0.406 1 -3.787 0.0002
## numRatio2 / numRatio2.5 0.537 0.0882 Inf 0.3889 0.741 1 -3.787 0.0002
## numRatio2 / numRatio3 0.288 0.0947 Inf 0.1512 0.548 1 -3.787 0.0002
## numRatio2.5 / numRatio3 0.537 0.0882 Inf 0.3889 0.741 1 -3.787 0.0002
##
## Results are averaged over the levels of: block
## Confidence level used: 0.95
## Intervals are back-transformed from the log odds ratio scale
## Tests are performed on the log odds ratio scale
#plot(ggpredict(ratio_condition_model, terms=c("numRatio","block")))