Load Dataset
fullData <- read_csv("C:/R/exp_1/results/BEH/merged_group_dataset/allGroups.csv")
LMM Instruction
# lmer(outcome ~ 1 + predictor + (1|participant) + (1|item), data = data)
#
# random effects = interior parentheses (1|X) > participant, item; left of | vary by grouping factor on right |
# fixed effect = not in parentheses > outcome, predictor
#
# Statistical plan
# separated for each attentional orienting groups - cuePos (Left vs Right) for each ROI:
#
# - Random effects: participants
# - Fixed effects: Groups (C vs MA vs MO), trialType (NG vs G)
Filter
data <- fullData |>
filter(correctDet == "correct")
Visualise Data Per Subject
perSubject <- data |>
filter(group == "MA") |>
ggplot(aes(x = validity, y = rtDet)) +
geom_boxplot() +
scale_x_discrete(limits = c("valid", "neutral", "invalid")) +
facet_grid(~id)
print(perSubject)

Behavioural Data
lmm_beh <- lmer(rtDet ~ group * trialType * validity + (1|id), data = data)
summary(lmm_beh)
## Linear mixed model fit by REML ['lmerMod']
## Formula: rtDet ~ group * trialType * validity + (1 | id)
## Data: data
##
## REML criterion at convergence: 1503
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.5998 -0.5527 -0.1205 0.3719 6.4916
##
## Random effects:
## Groups Name Variance Std.Dev.
## id (Intercept) 0.06549 0.2559
## Residual 0.07564 0.2750
## Number of obs: 5296, groups: id, 12
##
## Fixed effects:
## Estimate Std. Error t value
## (Intercept) 0.675900 0.130009 5.199
## groupMA 0.339451 0.183913 1.846
## groupMO -0.001699 0.184154 -0.009
## trialTypeNG -0.011963 0.032827 -0.364
## validityneutral -0.090844 0.032041 -2.835
## validityvalid -0.122891 0.025528 -4.814
## groupMA:trialTypeNG 0.001818 0.046382 0.039
## groupMO:trialTypeNG -0.009659 0.047771 -0.202
## groupMA:validityneutral -0.039294 0.045991 -0.854
## groupMO:validityneutral 0.008064 0.046935 0.172
## groupMA:validityvalid -0.041618 0.036399 -1.143
## groupMO:validityvalid -0.010799 0.037687 -0.287
## trialTypeNG:validityneutral 0.036570 0.045421 0.805
## trialTypeNG:validityvalid 0.033616 0.036358 0.925
## groupMA:trialTypeNG:validityneutral -0.056252 0.064636 -0.870
## groupMO:trialTypeNG:validityneutral -0.024212 0.065940 -0.367
## groupMA:trialTypeNG:validityvalid -0.070739 0.051452 -1.375
## groupMO:trialTypeNG:validityvalid -0.002062 0.052793 -0.039
anova
anova_beh <- aov(rtDet ~ group * trialType * validity, data = data)
summary(anova_beh)
## Df Sum Sq Mean Sq F value Pr(>F)
## group 2 89.2 44.62 357.145 <2e-16 ***
## trialType 1 0.1 0.07 0.523 0.4695
## validity 2 11.8 5.92 47.352 <2e-16 ***
## group:trialType 2 0.7 0.34 2.695 0.0677 .
## group:validity 4 0.7 0.17 1.381 0.2378
## trialType:validity 2 0.0 0.02 0.154 0.8575
## group:trialType:validity 4 0.4 0.09 0.715 0.5817
## Residuals 5278 659.4 0.12
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ANOVA rstatix
anova_rstatix <- anova_test(data = data,
formula = rtDet ~ group * trialType,
dv = rtDet,
wid = id,
between = c(group, trialType),
effect.size = "pes") #"Effect Size (ƞ2p)"
anova_rstatix
## ANOVA Table (type II tests)
##
## Effect DFn DFd F p p<.05 pes
## 1 group 2 5290 351.000 7.29e-144 * 1.17e-01
## 2 trialType 1 5290 0.514 4.73e-01 9.72e-05
## 3 group:trialType 2 5290 2.519 8.10e-02 9.52e-04
# anova_rstatix |>
# kbl() |>
# kable_minimal()
# knitr::kable(anova_rstatix,
# col.names = c("Effect", "DFn", "DFd", "F", "p", "p<.05", paste0("ƞ","2p")),
# format = "html")
#Cohen's D Benchmarks
#.01: Small effect size
#.06: Medium effect size
#.14 or higher: Large effect size