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