During data collection (and preregistration), we referred to four conditions:
no, low, medium, and high.
Pregistration:
https://doi.org/10.17605/OSF.IO/JVMFD
During data processing, we decided to rename the conditions to keep the labeling consistent between the studies.
# The data in each 3-min block are analyzed by minute. For each minute, the amp and itc are computed and then averaged across the four blocks of load.
tmpa2EEG=read.csv("data_audio_signal_noise_by_minute.csv", sep="\t",header=TRUE, dec=".");
#head(tmpa3EEG)
# Analysis of visual P3, as in our MMN paper (2019)
tmpvEEG=read.csv("Data_visualP3.csv", sep="\t",header=TRUE, dec=".");
#head(tmpwmc)
tmpwmc=read.csv("data_wmc.txt", sep="\t",header=TRUE, dec=".");
tmpwmc=tmpwmc[tmpwmc$fp > 3,]
#head(tmpwmc)
Sample size: N = 45.
Sanity check for behavioral performance (across low, high, and very high load):
Note that hits are correct responses between 200 and 1000 ms after target onset (defined in ASSR_study2_process_beh.R)
False alarms are responses at other times: 1152 + 7*4 (initial trials) - 288 (trial after a target) = 892.
# add 0.5 and 1 to avoid ceiling/floor effects
D$HRlocorr = (D$nHRlo + 0.5)/(288+1)
D$HRhicorr = (D$nHRhi + 0.5)/(288+1)
D$HRvhcorr = (D$nHRvh + 0.5)/(288+1)
# 72*4 = 288
D$FAlocorr = (D$nFAlo + 0.5)/(1180+1-288)
D$FAhicorr = (D$nFAhi + 0.5)/(1180+1-288)
D$FAvhcorr = (D$nFAvh + 0.5)/(1180+1-288)
# 288*4 = 1152 + 7*4 (initial trials1) = 1180
# do not count the next trial after a target (because this is considered to be a valid response)
# Dprime
D$dprlo <- qnorm(D$HRlocorr) - qnorm(D$FAlocorr)
D$dprhi <- qnorm(D$HRhicorr) - qnorm(D$FAhicorr)
D$dprvh <- qnorm(D$HRvhcorr) - qnorm(D$FAvhcorr)
# no need for criterion
#tmp$criterion <- - (1/2) * (qnorm(tmp$aware_crit_corrected) + qnorm(tmp$aware_catch_corrected))
D$dprloMhi = D$dprlo - D$dprhi
D$dprloMvh = D$dprlo - D$dprvh
D$dprhiMvh = D$dprhi - D$dprvh
# RT to hits
D$meanRTloMhi = D$meanRTmslo - D$meanRTmshi
D$meanRTloMvh = D$meanRTmslo - D$meanRTmsvh
D$meanRThiMvh = D$meanRTmshi - D$meanRTmsvh
# the numbers 1 to 4 refer to different blocks
# Amp SNR raw
D$AmpSNRno = rowMeans(cbind(D$AmpSNRno1,D$AmpSNRno2,D$AmpSNRno3,D$AmpSNRno4))
D$AmpSNRlo = rowMeans(cbind(D$AmpSNRlo1,D$AmpSNRlo2,D$AmpSNRlo3,D$AmpSNRlo4))
D$AmpSNRhi = rowMeans(cbind(D$AmpSNRhi1,D$AmpSNRhi2,D$AmpSNRhi3,D$AmpSNRhi4))
D$AmpSNRvh = rowMeans(cbind(D$AmpSNRvh1,D$AmpSNRvh2,D$AmpSNRvh3,D$AmpSNRvh4))
# Amp S raw
D$AmpSno = rowMeans(cbind(D$AmpSno1,D$AmpSno2,D$AmpSno3,D$AmpSno4))
D$AmpSlo = rowMeans(cbind(D$AmpSlo1,D$AmpSlo2,D$AmpSlo3,D$AmpSlo4))
D$AmpShi = rowMeans(cbind(D$AmpShi1,D$AmpShi2,D$AmpShi3,D$AmpShi4))
D$AmpSvh = rowMeans(cbind(D$AmpSvh1,D$AmpSvh2,D$AmpSvh3,D$AmpSvh4))
# Amp N raw
D$AmpNno = rowMeans(cbind(D$AmpNno1,D$AmpNno2,D$AmpNno3,D$AmpNno4))
D$AmpNlo = rowMeans(cbind(D$AmpNlo1,D$AmpNlo2,D$AmpNlo3,D$AmpNlo4))
D$AmpNhi = rowMeans(cbind(D$AmpNhi1,D$AmpNhi2,D$AmpNhi3,D$AmpNhi4))
D$AmpNvh = rowMeans(cbind(D$AmpNvh1,D$AmpNvh2,D$AmpNvh3,D$AmpNvh4))
# Amp S-N raw
D$AmpSmNno = rowMeans(cbind(D$AmpSmNno1,D$AmpSmNno2,D$AmpSmNno3,D$AmpSmNno4))
D$AmpSmNlo = rowMeans(cbind(D$AmpSmNlo1,D$AmpSmNlo2,D$AmpSmNlo3,D$AmpSmNlo4))
D$AmpSmNhi = rowMeans(cbind(D$AmpSmNhi1,D$AmpSmNhi2,D$AmpSmNhi3,D$AmpSmNhi4))
D$AmpSmNvh = rowMeans(cbind(D$AmpSmNvh1,D$AmpSmNvh2,D$AmpSmNvh3,D$AmpSmNvh4))
# the numbers 1 to 4 refer to different blocks
# Itc SNR raw
D$ItcSNRno = rowMeans(cbind(D$ItcSNRno1,D$ItcSNRno2,D$ItcSNRno3,D$ItcSNRno4))
D$ItcSNRlo = rowMeans(cbind(D$ItcSNRlo1,D$ItcSNRlo2,D$ItcSNRlo3,D$ItcSNRlo4))
D$ItcSNRhi = rowMeans(cbind(D$ItcSNRhi1,D$ItcSNRhi2,D$ItcSNRhi3,D$ItcSNRhi4))
D$ItcSNRvh = rowMeans(cbind(D$ItcSNRvh1,D$ItcSNRvh2,D$ItcSNRvh3,D$ItcSNRvh4))
# Itc S raw
D$ItcSno = rowMeans(cbind(D$ItcSno1,D$ItcSno2,D$ItcSno3,D$ItcSno4))
D$ItcSlo = rowMeans(cbind(D$ItcSlo1,D$ItcSlo2,D$ItcSlo3,D$ItcSlo4))
D$ItcShi = rowMeans(cbind(D$ItcShi1,D$ItcShi2,D$ItcShi3,D$ItcShi4))
D$ItcSvh = rowMeans(cbind(D$ItcSvh1,D$ItcSvh2,D$ItcSvh3,D$ItcSvh4))
# Itc N raw
D$ItcNno = rowMeans(cbind(D$ItcNno1,D$ItcNno2,D$ItcNno3,D$ItcNno4))
D$ItcNlo = rowMeans(cbind(D$ItcNlo1,D$ItcNlo2,D$ItcNlo3,D$ItcNlo4))
D$ItcNhi = rowMeans(cbind(D$ItcNhi1,D$ItcNhi2,D$ItcNhi3,D$ItcNhi4))
D$ItcNvh = rowMeans(cbind(D$ItcNvh1,D$ItcNvh2,D$ItcNvh3,D$ItcNvh4))
# Itc S-N raw
D$ItcSmNno = rowMeans(cbind(D$ItcSmNno1,D$ItcSmNno2,D$ItcSmNno3,D$ItcSmNno4))
D$ItcSmNlo = rowMeans(cbind(D$ItcSmNlo1,D$ItcSmNlo2,D$ItcSmNlo3,D$ItcSmNlo4))
D$ItcSmNhi = rowMeans(cbind(D$ItcSmNhi1,D$ItcSmNhi2,D$ItcSmNhi3,D$ItcSmNhi4))
D$ItcSmNvh = rowMeans(cbind(D$ItcSmNvh1,D$ItcSmNvh2,D$ItcSmNvh3,D$ItcSmNvh4))
# visual P3 is difference between targets and nontargets.
# the numbers 1 to 4 refer to different blocks
D$vP3lo1 = D$vP3_Tarlo1- D$vP3_Nonlo1
D$vP3lo2 = D$vP3_Tarlo2- D$vP3_Nonlo2
D$vP3lo3 = D$vP3_Tarlo3- D$vP3_Nonlo3
D$vP3lo4 = D$vP3_Tarlo4- D$vP3_Nonlo4
D$vP3hi1 = D$vP3_Tarhi1- D$vP3_Nonhi1
D$vP3hi2 = D$vP3_Tarhi2- D$vP3_Nonhi2
D$vP3hi3 = D$vP3_Tarhi3- D$vP3_Nonhi3
D$vP3hi4 = D$vP3_Tarhi4- D$vP3_Nonhi4
D$vP3vh1 = D$vP3_Tarvh1- D$vP3_Nonvh1
D$vP3vh2 = D$vP3_Tarvh2- D$vP3_Nonvh2
D$vP3vh3 = D$vP3_Tarvh3- D$vP3_Nonvh3
D$vP3vh4 = D$vP3_Tarvh4- D$vP3_Nonvh4
D$vP3lo = rowMeans(cbind(D$vP3lo1, D$vP3lo2, D$vP3lo3, D$vP3lo4))
D$vP3hi = rowMeans(cbind(D$vP3hi1, D$vP3hi2, D$vP3hi3, D$vP3hi4))
D$vP3vh = rowMeans(cbind(D$vP3vh1, D$vP3vh2, D$vP3vh3, D$vP3vh4))
D$vP3loMhi = D$vP3lo - D$vP3hi
D$vP3loMvh = D$vP3lo - D$vP3vh
D$vP3hiMvh = D$vP3hi - D$vP3vh
Simple hit rates (%) were as follows:
Conditions are no, lo, hi, vh (very high)
Differences: loMhi refers to lo minus hi
dpr: signal detection index d´
RTms: reaction time to hits (in ms)
pcu: partial credit unit score of working memory capacity
vP3: visual P3 to targets (vs. nontargets)
LL and UL refer to the 95% confidence interval (from two-tailed t tests)
Dtmp = subset(D, select=c(dprlo, dprhi, dprvh,
dprloMhi, dprloMvh, dprhiMvh,
meanRTmslo, meanRTmshi, meanRTmsvh,
meanRTloMhi, meanRTloMvh, meanRThiMvh,
pcu,
vP3lo, vP3hi, vP3vh,
vP3loMhi, vP3loMvh, vP3hiMvh))
RmCI = tableCIs(Dtmp)
RmCI %>%
kable(digits = 3) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | LL | UL | N |
---|---|---|---|---|
dprlo | 4.249 | 3.951 | 4.546 | 45 |
dprhi | 2.177 | 1.982 | 2.372 | 45 |
dprvh | 2.707 | 2.517 | 2.896 | 45 |
dprloMhi | 2.072 | 1.890 | 2.253 | 45 |
dprloMvh | 1.542 | 1.343 | 1.741 | 45 |
dprhiMvh | -0.530 | -0.638 | -0.422 | 45 |
meanRTmslo | 381.114 | 369.712 | 392.517 | 45 |
meanRTmshi | 500.728 | 487.701 | 513.755 | 45 |
meanRTmsvh | 460.841 | 448.851 | 472.832 | 45 |
meanRTloMhi | -119.614 | -129.930 | -109.298 | 45 |
meanRTloMvh | -79.727 | -87.900 | -71.554 | 45 |
meanRThiMvh | 39.887 | 31.211 | 48.563 | 45 |
pcu | 0.772 | 0.728 | 0.816 | 40 |
vP3lo | 6.912 | 5.225 | 8.599 | 42 |
vP3hi | 2.108 | 1.097 | 3.118 | 42 |
vP3vh | 3.862 | 2.563 | 5.161 | 42 |
vP3loMhi | 4.804 | 3.524 | 6.084 | 42 |
vP3loMvh | 3.050 | 2.089 | 4.010 | 42 |
vP3hiMvh | -1.754 | -2.475 | -1.034 | 42 |
Dtmp = subset(D, select=c(dprlo, dprhi, dprvh, dprloMhi, dprloMvh, dprhiMvh))
RmCI = tableCIs(Dtmp)
#RmCI
Ddpr = RmCI[1:3,]
Dtmp = cbind(D$fp, Dtmp)
Dtmp = na.omit(Dtmp)
colnames(Dtmp) = c('fp','low','high','very high','loMhi','loMvh','hiMvh')
bp1 = plotoverlay(dm = Dtmp, lbl = "d´", dvy = "Sensitivity (d´)")
Dtmp = subset(D, select=c(meanRTmslo, meanRTmshi, meanRTmsvh, meanRTloMhi, meanRTloMvh, meanRThiMvh))
RmCI = tableCIs(Dtmp)
#RmCI
DRT = RmCI[1:3,1:4]
Dtmp = cbind(D$fp, Dtmp)
Dtmp = na.omit(Dtmp)
colnames(Dtmp) = c('fp','low','high','very high','loMhi','loMvh','hiMvh')
bp2 = plotoverlay(dm = Dtmp, lbl = "RT", dvy = "RT (ms)")
grid.arrange(bp1, bp2, ncol = 2)
Ddpr$Condition = c("low", "high", "very high")
DRT$Condition = c("low", "high", "very high")
Ddpr$Condition = factor(Ddpr$Condition, levels=c("low", "high", "very high"))
DRT$Condition = factor(DRT$Condition, levels=c("low", "high", "very high"))
fig_dpr = ggplot(Ddpr, aes(x=Condition, y=Mean, fill=Condition)) +
geom_bar(stat="identity"
,color="black" # add black border to each bar
,position=position_dodge()) + # separare bars
theme_bw() + # get rid of background
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank()) + #no grid lines
geom_errorbar(position=position_dodge(.9), width=.25,
aes(ymin=LL, ymax=UL)) +
scale_fill_manual(
values = c("#999999", "#CCCCCC", "#FFFFFF"),
name = "Condition",
labels = c("low","high","very high")) +
labs(title = paste0("d´(N = ", nrow(D),")")) +
theme(plot.title = element_text(hjust = 0.5)) +
labs(x = "Condition") +
labs(y = "Sensitivity (d´)") +
labs(legend = "Condition")
fig_RT = ggplot(DRT, aes(x=Condition, y=Mean, fill=Condition)) +
geom_bar(stat="identity"
,color="black" # add black border to each bar
,position=position_dodge()) + # separare bars
theme_bw() + # get rid of background
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank()) + #no grid lines
geom_errorbar(position=position_dodge(.9), width=.25,
aes(ymin=LL, ymax=UL)) +
scale_fill_manual(
values = c("#999999", "#CCCCCC", "#FFFFFF"),
name = "Condition",
labels = c("low","high","very high")) +
labs(title = paste0("RT (N = ", nrow(D),")")) +
theme(plot.title = element_text(hjust = 0.5)) +
labs(x = "Condition") +
labs(y = "Reaction time (ms)") +
labs(legend = "Condition")
grid.arrange(fig_dpr, fig_RT, ncol = 2)
Mental | Mean | LL | UL | N |
---|---|---|---|---|
no | 20.922 | 14.969 | 26.876 | 45 |
lo | 34.606 | 28.841 | 40.370 | 45 |
hi | 51.678 | 45.003 | 58.352 | 45 |
vh | 46.367 | 40.165 | 52.568 | 45 |
noMlo | -13.683 | -18.609 | -8.758 | 45 |
noMhi | -30.756 | -37.870 | -23.641 | 45 |
noMvh | -25.444 | -31.714 | -19.175 | 45 |
loMhi | -17.072 | -22.468 | -11.677 | 45 |
loMvh | -11.761 | -16.116 | -7.407 | 45 |
hiMvh | 5.311 | 1.957 | 8.665 | 45 |
Physical | Mean | LL | UL | N |
---|---|---|---|---|
no | 17.017 | 11.599 | 22.435 | 45 |
lo | 22.767 | 16.608 | 28.925 | 45 |
hi | 28.444 | 20.947 | 35.942 | 45 |
vh | 26.539 | 19.223 | 33.855 | 45 |
noMlo | -5.750 | -8.409 | -3.091 | 45 |
noMhi | -11.428 | -16.198 | -6.657 | 45 |
noMvh | -9.522 | -14.005 | -5.040 | 45 |
loMhi | -5.678 | -9.191 | -2.165 | 45 |
loMvh | -3.772 | -6.997 | -0.547 | 45 |
hiMvh | 1.906 | -0.517 | 4.328 | 45 |
Temporal | Mean | LL | UL | N |
---|---|---|---|---|
no | 22.417 | 16.423 | 28.411 | 45 |
lo | 37.222 | 31.753 | 42.692 | 45 |
hi | 52.206 | 45.036 | 59.375 | 45 |
vh | 46.239 | 39.664 | 52.814 | 45 |
noMlo | -14.806 | -19.388 | -10.223 | 45 |
noMhi | -29.789 | -36.854 | -22.724 | 45 |
noMvh | -23.822 | -29.969 | -17.676 | 45 |
loMhi | -14.983 | -19.364 | -10.602 | 45 |
loMvh | -9.017 | -12.388 | -5.645 | 45 |
hiMvh | 5.967 | 3.247 | 8.686 | 45 |
Performance | Mean | LL | UL | N |
---|---|---|---|---|
no | 69.422 | 61.773 | 77.072 | 45 |
lo | 61.094 | 54.059 | 68.130 | 45 |
hi | 36.006 | 29.508 | 42.503 | 45 |
vh | 44.772 | 37.847 | 51.698 | 45 |
noMlo | 8.328 | 1.480 | 15.175 | 45 |
noMhi | 33.417 | 25.166 | 41.667 | 45 |
noMvh | 24.650 | 17.376 | 31.924 | 45 |
loMhi | 25.089 | 20.512 | 29.666 | 45 |
loMvh | 16.322 | 12.710 | 19.934 | 45 |
hiMvh | -8.767 | -11.935 | -5.598 | 45 |
Effort | Mean | LL | UL | N |
---|---|---|---|---|
no | 21.028 | 15.808 | 26.248 | 45 |
lo | 38.539 | 33.064 | 44.013 | 45 |
hi | 51.133 | 44.820 | 57.447 | 45 |
vh | 48.306 | 42.149 | 54.463 | 45 |
noMlo | -17.511 | -22.687 | -12.335 | 45 |
noMhi | -30.106 | -37.123 | -23.088 | 45 |
noMvh | -27.278 | -33.507 | -21.049 | 45 |
loMhi | -12.594 | -17.061 | -8.128 | 45 |
loMvh | -9.767 | -13.139 | -6.394 | 45 |
hiMvh | 2.828 | -0.370 | 6.026 | 45 |
Frustration | Mean | LL | UL | N |
---|---|---|---|---|
no | 17.300 | 12.054 | 22.546 | 45 |
lo | 22.678 | 15.929 | 29.427 | 45 |
hi | 34.767 | 26.629 | 42.904 | 45 |
vh | 29.722 | 21.961 | 37.484 | 45 |
noMlo | -5.378 | -9.127 | -1.629 | 45 |
noMhi | -17.467 | -23.720 | -11.213 | 45 |
noMvh | -12.422 | -17.634 | -7.210 | 45 |
loMhi | -12.089 | -16.329 | -7.849 | 45 |
loMvh | -7.044 | -9.857 | -4.232 | 45 |
hiMvh | 5.044 | 2.116 | 7.973 | 45 |
fig_mean = ggplot(Dnasa, aes(x=Variable, y=Mean, fill=Condition)) +
geom_bar(stat="identity"
,color="black" # add black border to each bar
,position=position_dodge()) + # separare bars
theme_bw() + # get rid of background
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank()) + #no grid lines
geom_errorbar(position=position_dodge(.9), width=.25,
aes(ymin=LL, ymax=UL)) +
scale_fill_manual(
values = c("#000000", "#999999", "#CCCCCC", "#FFFFFF"),
name = "Condition",
labels = c("no","low","high","very high")) +
labs(title = paste0("NASA-TLX ratings (N = ", nrow(D),")")) +
theme(plot.title = element_text(hjust = 0.5)) +
labs(x = "Item") +
labs(y = "Mean CR100 rating (95% CIs)") +
labs(legend = "Load")
plot(fig_mean)
The sample lacks three subjects for visual P3 because of equipment failure: The visual onsets were not recorded.
Dtmp = subset(D, select=c(vP3lo, vP3hi, vP3vh, vP3loMhi, vP3loMvh, vP3hiMvh))
RmCI = tableCIs(Dtmp)
Dtmp = cbind(D$fp, Dtmp)
Dtmp = na.omit(Dtmp)
colnames(Dtmp) = c('fp','low','high','very high','loMhi','loMvh','hiMvh')
bp1 = plotoverlay(dm = Dtmp,lbl = "Visual P3", dvy = "Mean amplitude (µV)")
plot(bp1)
RmCI %>%
kable(digits = 3) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | LL | UL | N |
---|---|---|---|---|
vP3lo | 6.912 | 5.225 | 8.599 | 42 |
vP3hi | 2.108 | 1.097 | 3.118 | 42 |
vP3vh | 3.862 | 2.563 | 5.161 | 42 |
vP3loMhi | 4.804 | 3.524 | 6.084 | 42 |
vP3loMvh | 3.050 | 2.089 | 4.010 | 42 |
vP3hiMvh | -1.754 | -2.475 | -1.034 | 42 |
Bayes factor (BF) analyses from Bayesian one-sample t tests of difference scores (e.g., no minus high load). Although the focus is on signal-minus-noise (SmN), the output includes SNR (signal-to-noise ratio) and S (signal).
The BFs were computed with Aladins R script.
https://doi.org/10.17045/sthlmuni.4981154.v3
The BF01 uses uniform H1 models with different lower limits (LL) and upper limits (UL).
BF01 is the evidence for the null hypothesis relative to the alternative hypothesis.
If BF01 > 3, this is evidence for the null.
If BF01 < 1/3, this is evidence against the null.
iv = "AmpSmN"
Dtmp = getdiffs(D, iv = iv)
Dtmp = tableCIs(Dtmp[,-c(1:4)])
Dtmp %>%
kable(digits = 3, caption = "Descriptives") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | LL | UL | N |
---|---|---|---|---|
no | 0.243 | 0.210 | 0.275 | 45 |
lo | 0.244 | 0.212 | 0.275 | 45 |
hi | 0.243 | 0.211 | 0.275 | 45 |
vh | 0.242 | 0.210 | 0.274 | 45 |
noMlo | -0.001 | -0.012 | 0.010 | 45 |
noMhi | 0.000 | -0.013 | 0.012 | 45 |
noMvh | 0.000 | -0.013 | 0.013 | 45 |
loMhi | 0.000 | -0.012 | 0.013 | 45 |
loMvh | 0.001 | -0.012 | 0.014 | 45 |
hiMvh | 0.001 | -0.011 | 0.012 | 45 |
Dtmp = contrastBFs(D, iv = iv)
colnames(Dtmp) = c('Variable','Mean','[-1, +1]','[0, +1]','[0, +0.2]')
Dtmp %>%
kable(digits = 3, caption = "BF results") %>%
add_header_above(c(" " = 2, "BF01" = 3)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | [-1, +1] | [0, +1] | [0, +0.2] |
---|---|---|---|---|
noMlo | -0.001 | 144.1 | 152.2 | 33.5 |
noMhi | 0.000 | 127.0 | 125.7 | 27.2 |
noMvh | 0.000 | 123.6 | 113.6 | 24.4 |
loMhi | 0.000 | 123.8 | 110.8 | 23.7 |
loMvh | 0.001 | 123.5 | 103.3 | 22.0 |
hiMvh | 0.001 | 142.6 | 122.7 | 26.4 |
iv = "AmpSNR"
Dtmp = getdiffs(D, iv = iv)
Dtmp = tableCIs(Dtmp[,-c(1:4)])
Dtmp %>%
kable(digits = 3, caption = "Descriptives") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | LL | UL | N |
---|---|---|---|---|
no | 6.609 | 5.643 | 7.575 | 45 |
lo | 6.742 | 5.723 | 7.761 | 45 |
hi | 6.746 | 5.766 | 7.727 | 45 |
vh | 6.805 | 5.749 | 7.861 | 45 |
noMlo | -0.133 | -0.559 | 0.292 | 45 |
noMhi | -0.138 | -0.503 | 0.227 | 45 |
noMvh | -0.196 | -0.548 | 0.156 | 45 |
loMhi | -0.004 | -0.399 | 0.391 | 45 |
loMvh | -0.062 | -0.465 | 0.340 | 45 |
hiMvh | -0.058 | -0.376 | 0.259 | 45 |
Dtmp = contrastBFs(D, iv = iv)
colnames(Dtmp) = c('Variable','Mean','[-1, +1]','[0, +1]','[0, +0.2]')
Dtmp %>%
kable(digits = 3, caption = "BF results") %>%
add_header_above(c(" " = 2, "BF01" = 3)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | [-1, +1] | [0, +1] | [0, +0.2] |
---|---|---|---|---|
noMlo | -0.134 | 3.1 | 5.8 | 1.5 |
noMhi | -0.138 | 3.3 | 7.2 | 1.7 |
noMvh | -0.196 | 2.4 | 9.0 | 2.0 |
loMhi | -0.004 | 4.0 | 4.1 | 1.2 |
loMvh | -0.062 | 3.8 | 5.0 | 1.3 |
hiMvh | -0.058 | 4.7 | 6.6 | 1.6 |
iv = "AmpS"
Dtmp = getdiffs(D, iv = iv)
Dtmp = tableCIs(Dtmp[,-c(1:4)])
Dtmp %>%
kable(digits = 3, caption = "Descriptives") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | LL | UL | N |
---|---|---|---|---|
no | 0.297 | 0.265 | 0.329 | 45 |
lo | 0.295 | 0.263 | 0.326 | 45 |
hi | 0.294 | 0.263 | 0.325 | 45 |
vh | 0.293 | 0.261 | 0.324 | 45 |
noMlo | 0.003 | -0.007 | 0.012 | 45 |
noMhi | 0.003 | -0.007 | 0.014 | 45 |
noMvh | 0.005 | -0.006 | 0.015 | 45 |
loMhi | 0.001 | -0.012 | 0.013 | 45 |
loMvh | 0.002 | -0.010 | 0.014 | 45 |
hiMvh | 0.002 | -0.009 | 0.012 | 45 |
Dtmp = contrastBFs(D, iv = iv)
colnames(Dtmp) = c('Variable','Mean','[-1, +1]','[0, +1]','[0, +0.2]')
Dtmp %>%
kable(digits = 3, caption = "BF results") %>%
add_header_above(c(" " = 2, "BF01" = 3)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | [-1, +1] | [0, +1] | [0, +0.2] |
---|---|---|---|---|
noMlo | 0.003 | 143.1 | 95.7 | 20.3 |
noMhi | 0.003 | 126.1 | 83.2 | 17.5 |
noMvh | 0.005 | 100.8 | 60.0 | 12.4 |
loMhi | 0.000 | 129.0 | 114.2 | 24.5 |
loMvh | 0.002 | 128.7 | 96.2 | 20.4 |
hiMvh | 0.002 | 145.9 | 112.0 | 24.0 |
iv = "ItcSmN"
Dtmp = getdiffs(D, iv = iv)
Dtmp = tableCIs(Dtmp[,-c(1:4)])
Dtmp %>%
kable(digits = 3, caption = "Descriptives") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | LL | UL | N |
---|---|---|---|---|
no | 0.368 | 0.323 | 0.413 | 45 |
lo | 0.373 | 0.327 | 0.419 | 45 |
hi | 0.364 | 0.317 | 0.411 | 45 |
vh | 0.361 | 0.315 | 0.408 | 45 |
noMlo | -0.004 | -0.021 | 0.012 | 45 |
noMhi | 0.005 | -0.015 | 0.024 | 45 |
noMvh | 0.007 | -0.008 | 0.022 | 45 |
loMhi | 0.009 | -0.009 | 0.027 | 45 |
loMvh | 0.011 | -0.006 | 0.028 | 45 |
hiMvh | 0.002 | -0.012 | 0.017 | 45 |
Dtmp = contrastBFs(D, iv = iv)
colnames(Dtmp) = c('Variable','Mean','[-1, +1]','[0, +1]','[0, +0.2]')
Dtmp %>%
kable(digits = 3, caption = "BF results") %>%
add_header_above(c(" " = 2, "BF01" = 3)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | [-1, +1] | [0, +1] | [0, +0.2] |
---|---|---|---|---|
noMlo | -0.004 | 84.5 | 135.0 | 29.4 |
noMhi | 0.004 | 73.5 | 52.7 | 10.9 |
noMvh | 0.007 | 68.4 | 40.8 | 8.3 |
loMhi | 0.009 | 53.4 | 31.5 | 6.4 |
loMvh | 0.011 | 37.5 | 20.4 | 4.1 |
hiMvh | 0.002 | 104.5 | 79.2 | 16.6 |
iv = "ItcSNR"
Dtmp = getdiffs(D, iv = iv)
Dtmp = tableCIs(Dtmp[,-c(1:4)])
Dtmp %>%
kable(digits = 3, caption = "Descriptives") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | LL | UL | N |
---|---|---|---|---|
no | 5.676 | 5.101 | 6.251 | 45 |
lo | 5.632 | 5.055 | 6.209 | 45 |
hi | 5.661 | 5.063 | 6.260 | 45 |
vh | 5.605 | 5.003 | 6.208 | 45 |
noMlo | 0.043 | -0.175 | 0.262 | 45 |
noMhi | 0.014 | -0.246 | 0.274 | 45 |
noMvh | 0.070 | -0.151 | 0.292 | 45 |
loMhi | -0.029 | -0.294 | 0.236 | 45 |
loMvh | 0.027 | -0.199 | 0.253 | 45 |
hiMvh | 0.056 | -0.162 | 0.275 | 45 |
Dtmp = contrastBFs(D, iv = iv)
colnames(Dtmp) = c('Variable','Mean','[-1, +1]','[0, +1]','[0, +0.2]')
Dtmp %>%
kable(digits = 3, caption = "BF results") %>%
add_header_above(c(" " = 2, "BF01" = 3)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | [-1, +1] | [0, +1] | [0, +0.2] |
---|---|---|---|---|
noMlo | 0.043 | 6.8 | 5.1 | 1.2 |
noMhi | 0.014 | 6.1 | 5.6 | 1.3 |
noMvh | 0.070 | 5.9 | 4.0 | 1.0 |
loMhi | -0.029 | 5.9 | 7.1 | 1.6 |
loMvh | 0.027 | 6.9 | 5.8 | 1.3 |
hiMvh | 0.056 | 6.4 | 4.6 | 1.1 |
iv = "ItcS"
Dtmp = getdiffs(D, iv = iv)
Dtmp = tableCIs(Dtmp[,-c(1:4)])
Dtmp %>%
kable(digits = 3, caption = "Descriptives") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | LL | UL | N |
---|---|---|---|---|
no | 0.448 | 0.403 | 0.493 | 45 |
lo | 0.454 | 0.408 | 0.500 | 45 |
hi | 0.443 | 0.396 | 0.490 | 45 |
vh | 0.441 | 0.395 | 0.488 | 45 |
noMlo | -0.006 | -0.022 | 0.011 | 45 |
noMhi | 0.005 | -0.015 | 0.025 | 45 |
noMvh | 0.007 | -0.008 | 0.022 | 45 |
loMhi | 0.011 | -0.007 | 0.029 | 45 |
loMvh | 0.013 | -0.004 | 0.030 | 45 |
hiMvh | 0.002 | -0.012 | 0.016 | 45 |
Dtmp = contrastBFs(D, iv = iv)
colnames(Dtmp) = c('Variable','Mean','[-1, +1]','[0, +1]','[0, +0.2]')
Dtmp %>%
kable(digits = 3, caption = "BF results") %>%
add_header_above(c(" " = 2, "BF01" = 3)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | [-1, +1] | [0, +1] | [0, +0.2] |
---|---|---|---|---|
noMlo | -0.006 | 75.8 | 141.2 | 30.9 |
noMhi | 0.005 | 69.8 | 48.4 | 10.0 |
noMvh | 0.007 | 67.0 | 39.7 | 8.1 |
loMhi | 0.011 | 42.3 | 23.7 | 4.8 |
loMvh | 0.013 | 30.5 | 16.3 | 3.3 |
hiMvh | 0.002 | 108.2 | 86.0 | 18.1 |
RBF = rbind(BFamp, BFitc)
Vlabels = c('Amp_noMlo', 'Amp_noMhi', 'Amp_loMhi','ITC_noMlo', 'ITC_noMhi', 'ITC_loMhi')
RBF = data.frame(Vlabels, RBF, row.names = NULL)
RBF = RBF[,-2]
colnames(RBF) = c('Variable','Mean','[-1, +1]','[0, +1]','[0, +0.2]')
RBF %>%
kable(digits = 3, caption = "BF results") %>%
add_header_above(c(" " = 2, "BF01" = 3)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Mean | [-1, +1] | [0, +1] | [0, +0.2] |
---|---|---|---|---|
Amp_noMlo | -0.001 | 144.1 | 152.2 | 33.5 |
Amp_noMhi | 0.000 | 127.0 | 125.7 | 27.2 |
Amp_loMhi | 0.000 | 123.8 | 110.8 | 23.7 |
ITC_noMlo | -0.004 | 84.5 | 135.0 | 29.4 |
ITC_noMhi | 0.004 | 73.5 | 52.7 | 10.9 |
ITC_loMhi | 0.009 | 53.4 | 31.5 | 6.4 |
iv = "AmpSmN"
Dtmp = getdiffs(D, iv = iv)
Dtmp = Dtmp[,c(5:8,10)]
Dtmp = cbind(D$fp, Dtmp)
colnames(Dtmp)[1] = 'fp'
bp1 = plotoverlay(dm = Dtmp,lbl = paste0("Amplitude SmN"), dvy = "Mean amplitude (µV)")
iv = "ItcSmN"
Dtmp = getdiffs(D, iv = iv)
Dtmp = Dtmp[,c(5:8,10)]
Dtmp = cbind(D$fp, Dtmp)
colnames(Dtmp)[1] = 'fp'
bp2 = plotoverlay(dm = Dtmp,lbl = paste0("ITC SmN"), dvy = "Mean ITC")
grid.arrange(bp1, bp2, ncol = 2)
Data exploration (fishing) suggests that across subjects, an RT increase from low to high load correlated with a decrease in visual P3 (r = -0.366). Suggests also that an increase in mental NASA rating from low to high load correlated with a d´ decrease (r = -0.335).
Dtmp = subset(D, select=c(dprloMhi, meanRTloMhi))
Dtmp$MentalloMhi = D$Mentallo - D$Mentalhi
Dtmp$vP3loMhi = D$vP3loMhi
Dtmp$AmploMhi = D$AmpSmNlo - D$AmpSmNhi
Dtmp$ItcloMhi = D$ItcSmNlo - D$ItcSmNhi
Dtmp = na.omit(Dtmp)
cor(Dtmp) %>%
kable(digits = 3) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
dprloMhi | meanRTloMhi | MentalloMhi | vP3loMhi | AmploMhi | ItcloMhi | |
---|---|---|---|---|---|---|
dprloMhi | 1.000 | -0.147 | -0.335 | 0.235 | 0.029 | -0.005 |
meanRTloMhi | -0.147 | 1.000 | 0.117 | -0.367 | -0.256 | -0.114 |
MentalloMhi | -0.335 | 0.117 | 1.000 | -0.159 | -0.064 | -0.037 |
vP3loMhi | 0.235 | -0.367 | -0.159 | 1.000 | 0.107 | 0.180 |
AmploMhi | 0.029 | -0.256 | -0.064 | 0.107 | 1.000 | 0.743 |
ItcloMhi | -0.005 | -0.114 | -0.037 | 0.180 | 0.743 | 1.000 |
Working memory capacity was the wmc.pcu score.
Any difference scores refer to signal minus noise (SmN) measures.
The sample is smaller: The first three subjects were excluded because they performed the task at the end (rather than at the beginning), and two more subjects were excluded because of equipment failure.
LL and UL refer to the 95% confidence interval of the correlation (from one-tailed t tests).
The BFs were computed with the BayesFactor package in R.
https://richarddmorey.github.io/BayesFactor/
The BF01 used a flat prior (beta width = 1). Note that this prior is the default in JASP, which is a stand-alone program to conduct Bayesian analyses.
https://jasp-stats.org/
Cred_LL and Cred_UL refer to the 95% credible interval of the correlation (from BayesFactor).
Variable | Correlation | LL | UL | BF01 | Cred_LL | Cred_UL | N |
---|---|---|---|---|---|---|---|
Amp_no | 0.042 | -0.273 | 0.349 | 4.915 | -0.265 | 0.334 | 40 |
Amp_lo | 0.088 | -0.229 | 0.389 | 4.405 | -0.223 | 0.379 | 40 |
Amp_hi | 0.041 | -0.274 | 0.348 | 4.927 | -0.264 | 0.336 | 40 |
Amp_vh | 0.025 | -0.289 | 0.334 | 5.020 | -0.281 | 0.327 | 40 |
Amp_noMlo | -0.127 | -0.422 | 0.192 | 3.780 | -0.407 | 0.187 | 40 |
Amp_noMhi | 0.006 | -0.306 | 0.317 | 5.074 | -0.297 | 0.303 | 40 |
Amp_noMvh | 0.039 | -0.276 | 0.347 | 4.938 | -0.265 | 0.330 | 40 |
Amp_loMhi | 0.116 | -0.203 | 0.413 | 3.969 | -0.191 | 0.397 | 40 |
Amp_loMvh | 0.149 | -0.170 | 0.440 | 3.377 | -0.170 | 0.422 | 40 |
Amp_hiMvh | 0.040 | -0.275 | 0.347 | 4.933 | -0.266 | 0.331 | 40 |
Itc_no | 0.054 | -0.262 | 0.360 | 4.815 | -0.261 | 0.353 | 40 |
Itc_lo | 0.077 | -0.240 | 0.380 | 4.556 | -0.228 | 0.368 | 40 |
Itc_hi | 0.021 | -0.293 | 0.330 | 5.039 | -0.284 | 0.318 | 40 |
Itc_vh | 0.045 | -0.271 | 0.351 | 4.898 | -0.263 | 0.333 | 40 |
Itc_noMlo | -0.071 | -0.374 | 0.246 | 4.630 | -0.363 | 0.230 | 40 |
Itc_noMhi | 0.079 | -0.238 | 0.381 | 4.533 | -0.238 | 0.360 | 40 |
Itc_noMvh | 0.023 | -0.290 | 0.332 | 5.029 | -0.279 | 0.316 | 40 |
Itc_loMhi | 0.145 | -0.175 | 0.436 | 3.463 | -0.175 | 0.418 | 40 |
Itc_loMvh | 0.085 | -0.232 | 0.387 | 4.449 | -0.225 | 0.379 | 40 |
Itc_hiMvh | -0.079 | -0.381 | 0.238 | 4.528 | -0.368 | 0.234 | 40 |
Explore factorial analyses (load x block).
Dtmp1a = subset(D, select=c(fp,
AmpSmNno1, AmpSmNno2, AmpSmNno3, AmpSmNno4,
AmpSmNhi1, AmpSmNhi2, AmpSmNhi3, AmpSmNhi4))
Dtmp1b = subset(D, select=c(fp,
AmpSNRno1, AmpSNRno2, AmpSNRno3, AmpSNRno4,
AmpSNRhi1, AmpSNRhi2, AmpSNRhi3, AmpSNRhi4))
Dtmp1c = subset(D, select=c(fp,
AmpSno1, AmpSno2, AmpSno3, AmpSno4,
AmpShi1, AmpShi2, AmpShi3, AmpShi4))
Dtmp1d = subset(D, select=c(fp,
ItcSmNno1, ItcSmNno2, ItcSmNno3, ItcSmNno4,
ItcSmNhi1, ItcSmNhi2, ItcSmNhi3, ItcSmNhi4))
Dtmp1e = subset(D, select=c(fp,
ItcSNRno1, ItcSNRno2, ItcSNRno3, ItcSNRno4,
ItcSNRhi1, ItcSNRhi2, ItcSNRhi3, ItcSNRhi4))
Dtmp1f = subset(D, select=c(fp,
ItcSno1, ItcSno2, ItcSno3, ItcSno4,
ItcShi1, ItcShi2, ItcShi3, ItcShi4))
Dtmp1g = subset(D, select=c(fp,
vP3lo1, vP3lo2, vP3lo3, vP3lo4,
vP3hi1, vP3hi2, vP3hi3, vP3hi4))
Dtmp1g = na.omit(Dtmp1g)
Dtmp1 = list(Dtmp1a, Dtmp1b, Dtmp1c, Dtmp1d, Dtmp1e, Dtmp1f, Dtmp1g)
Dvars = c('Amplitude_SmN','Amplitude_SNR','Amplitude_S',
'Intertrial_Coherence_SmN','Intertrial_Coherence_SNR','Intertrial_Coherence_S',
'Visual_P3')
Fres = (matrix(ncol = 5, nrow = length(Dvars)))
Fres = as.data.frame(Fres)
colnames(Fres) = c('Variable','Overall_Interaction_p','Linear_Interaction_p','BF01_Interaction', 'BF01_error%')
## =====================================================================
## Amplitude_SmN
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 0.2514559 0.2155149 0.2873969
## no 2 45 0.2431811 0.2045487 0.2818135
## no 3 45 0.2559860 0.2217547 0.2902174
## no 4 45 0.2201614 0.1874002 0.2529226
## high 1 45 0.2468285 0.2117379 0.2819192
## high 2 45 0.2560215 0.2243014 0.2877415
## high 3 45 0.2460925 0.2099493 0.2822356
## high 4 45 0.2235309 0.1904516 0.2566101
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 21.2414 1 3.8643 44 241.8630 < 2.2e-16 ***
## load 0.0000 1 0.1541 44 0.0046 0.9463522
## block 0.0534 3 0.3387 132 6.9377 0.0002261 ***
## load:block 0.0066 3 0.3555 132 0.8209 0.4845334
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.67429 0.00483
## load:block 0.94568 0.79362
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.79333 0.0007558 ***
## load:block 0.96256 0.4806937
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.8417401 0.0005690922
## load:block 1.0373621 0.4845334175
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 -0.00019868 1 1.2438e-05 0.00054726 1 44 0.9814
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 13.60731 ±2.05%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Amplitude_SNR
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 7.026529 5.878655 8.174403
## no 2 45 7.036133 5.860118 8.212148
## no 3 45 6.556063 5.519877 7.592250
## no 4 45 5.816517 4.902929 6.730104
## high 1 45 7.101279 6.087925 8.114634
## high 2 45 6.930762 5.881942 7.979582
## high 3 45 6.868489 5.731600 8.005378
## high 4 45 6.085284 4.950328 7.220240
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 16052.7 1 3563.7 44 198.1991 < 2.2e-16 ***
## load 1.7 1 129.9 44 0.5777 0.4513
## block 69.5 3 361.6 132 8.4557 3.515e-05 ***
## load:block 2.5 3 486.5 132 0.2254 0.8786
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.90386 0.50466
## load:block 0.84125 0.19365
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.93346 5.799e-05 ***
## load:block 0.89337 0.858
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 1.0033800 3.514749e-05
## load:block 0.9568011 8.707257e-01
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 -0.15809 1 0.0052277 0.23123 1 44 0.633
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 25.68044 ±2.69%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Amplitude_S
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 0.3030946 0.2671156 0.3390736
## no 2 45 0.2941862 0.2575843 0.3307881
## no 3 45 0.3135706 0.2795390 0.3476022
## no 4 45 0.2783396 0.2468592 0.3098199
## high 1 45 0.2936031 0.2595675 0.3276387
## high 2 45 0.3078343 0.2770129 0.3386558
## high 3 45 0.2962455 0.2603443 0.3321467
## high 4 45 0.2788185 0.2473201 0.3103168
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 31.4803 1 3.7578 44 368.6022 < 2.2e-16 ***
## load 0.0009 1 0.1078 44 0.3697 0.546280
## block 0.0372 3 0.2926 132 5.5905 0.001219 **
## load:block 0.0121 3 0.3133 132 1.6952 0.171145
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.81724 0.12520
## load:block 0.98243 0.97967
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.87475 0.002093 **
## load:block 0.98819 0.171805
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.9352657 0.001610889
## load:block 1.0674201 0.171145153
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 0.00016788 1 1.1574e-05 0.00050925 1 44 0.9821
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 3.652064 ±13.11%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Intertrial_Coherence_SmN
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 0.3650258 0.3144738 0.4155778
## no 2 45 0.3829952 0.3325454 0.4334449
## no 3 45 0.3764730 0.3303361 0.4226099
## no 4 45 0.3486003 0.3003355 0.3968651
## high 1 45 0.3749499 0.3273693 0.4225306
## high 2 45 0.3752265 0.3240165 0.4264366
## high 3 45 0.3679060 0.3158521 0.4199600
## high 4 45 0.3369472 0.2876637 0.3862307
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 48.228 1 7.8927 44 268.8630 < 2.2e-16 ***
## load 0.002 1 0.3698 44 0.2184 0.642576
## block 0.069 3 0.6482 132 4.6769 0.003876 **
## load:block 0.006 3 0.6359 132 0.4459 0.720584
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.83195 0.16423
## load:block 0.84592 0.20993
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.89046 0.005567 **
## load:block 0.90132 0.700478
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.9534298 0.004519667
## load:block 0.9660190 0.713908294
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 0.010361 1 0.022342 1.0055 1 44 0.3215
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 22.53883 ±2.1%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Intertrial_Coherence_SNR
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 5.616130 4.936821 6.295440
## no 2 45 5.860586 5.191262 6.529911
## no 3 45 5.861011 5.260676 6.461346
## no 4 45 5.365169 4.750441 5.979896
## high 1 45 5.846516 5.241097 6.451935
## high 2 45 5.715651 5.039596 6.391705
## high 3 45 5.868372 5.150802 6.585941
## high 4 45 5.215323 4.578267 5.852378
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 11567.9 1 1278.26 44 398.1879 < 2e-16 ***
## load 0.0 1 65.84 44 0.0122 0.91245
## block 18.0 3 140.56 132 5.6295 0.00116 **
## load:block 2.2 3 168.91 132 0.5614 0.64144
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.80305 0.09525
## load:block 0.95681 0.86467
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.87759 0.001979 **
## load:block 0.97118 0.636426
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.9385436 0.001516115
## load:block 1.0474625 0.641440300
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 0.15628 1 0.019326 0.86711 1 44 0.3568
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 17.92473 ±1.87%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Intertrial_Coherence_S
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 0.4462053 0.3965190 0.4958917
## no 2 45 0.4632179 0.4130473 0.5133884
## no 3 45 0.4547615 0.4083251 0.5011980
## no 4 45 0.4292198 0.3807013 0.4777384
## high 1 45 0.4528388 0.4048025 0.5008751
## high 2 45 0.4560185 0.4048860 0.5071510
## high 3 45 0.4453270 0.3937112 0.4969428
## high 4 45 0.4180863 0.3688029 0.4673696
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 71.516 1 7.8710 44 399.7894 < 2.2e-16 ***
## load 0.003 1 0.3816 44 0.2897 0.593146
## block 0.064 3 0.6568 132 4.3006 0.006259 **
## load:block 0.004 3 0.6020 132 0.3242 0.807860
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.82732 0.15100
## load:block 0.84065 0.19162
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.88718 0.008675 **
## load:block 0.89642 0.786000
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.9496345 0.00723897
## load:block 0.9603401 0.79985032
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 0.008781 1 0.017496 0.78355 1 44 0.3809
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 26.38811 ±3.47%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Visual_P3
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## low 1 42 7.526945 5.22281119 9.831078
## low 2 42 6.905203 4.97479183 8.835615
## low 3 42 6.929089 5.33363977 8.524537
## low 4 42 6.285659 4.63110959 7.940208
## high 1 42 1.218411 -0.07473078 2.511552
## high 2 42 2.198978 0.95162162 3.446334
## high 3 42 2.411057 1.23859668 3.583517
## high 4 42 2.601892 1.47603053 3.727753
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 6833.2 1 5149.2 41 54.4084 4.876e-09 ***
## load 1938.7 1 1383.8 41 57.4430 2.539e-09 ***
## block 4.3 3 1116.6 123 0.1562 0.92553
## load:block 75.8 3 874.3 123 3.5550 0.01641 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.68061 0.00924
## load:block 0.80846 0.13344
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.79972 0.8899
## load:block 0.89595 0.0204 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.8528708 0.90092668
## load:block 0.9647891 0.01766311
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 -1.2748 1 0.22852 12.145 1 41 0.001187 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 2.459765 ±1.29%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
Summary of interaction analyses:
write.table(Fres, file = file.path(dir_fig,
paste0("table_ANOVA_by_block_interaction_p.tsv")),
row.names = F, dec = ".", sep = "\t")
Fres[,2:5] = round(Fres[,2:5], digits = 3)
Fres[Fres < 0.001] = 0.001
Fres %>%
kable(digits = 3) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Overall_Interaction_p | Linear_Interaction_p | BF01_Interaction | BF01_error% |
---|---|---|---|---|
Amplitude_SmN | 0.481 | 0.981 | 13.607 | 2.049 |
Amplitude_SNR | 0.858 | 0.633 | 25.680 | 2.689 |
Amplitude_S | 0.172 | 0.982 | 3.652 | 13.111 |
Intertrial_Coherence_SmN | 0.700 | 0.321 | 22.539 | 2.100 |
Intertrial_Coherence_SNR | 0.636 | 0.357 | 17.925 | 1.870 |
Intertrial_Coherence_S | 0.786 | 0.381 | 26.388 | 3.465 |
Visual_P3 | 0.020 | 0.001 | 2.460 | 1.294 |
Reliability of EEG variables over blocks. Results show mean correlations between the four blocks.
Note that raw scores (i.e., no and high load) have decent reliability whereas the difference scores show low reliability. This is not necessarily a problem: If all subjects change similarly, any variability in the difference scores would reflect mainly measurement noise, and the difference scores would show a low correlations over blocks (i.e., low reliability). Because of their low reliability, the difference scores are a poor measure if the goal is to distinguish the order among individual subjects.
Cres = (matrix(ncol = 4, nrow = 4))
Cres = as.data.frame(Cres)
colnames(Cres) = c('Variable','no','high','noMhi')
Vlabels = c("ampSNR", "ampS", "ampSmN", "itcSNR", "itcS", "itcSmN")
for (i in 1:length(Vlabels)) {
Cres[i,1] = Vlabels[i]
Dtmp2 = Dtmp1[[i]]
Dtmp2$fp = NULL
# no
tmp = cor(Dtmp2[,1:4])
diag(tmp) = NA
tmp = FisherZ(tmp)
Cres[i,2] = FisherZInv(mean(tmp, na.rm = TRUE))
# high
tmp = cor(Dtmp2[,5:8])
diag(tmp) = NA
tmp = FisherZ(tmp)
Cres[i,3] = FisherZInv(mean(tmp, na.rm = TRUE))
# no minus high
tmp = Dtmp2[,1:4] - Dtmp2[,5:8]
tmp = cor(tmp)
diag(tmp) = NA
tmp = FisherZ(tmp)
Cres[i,4] = FisherZInv(mean(tmp, na.rm = TRUE))
}
Cres %>%
kable(digits = 3) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | no | high | noMhi |
---|---|---|---|
ampSNR | 0.791 | 0.834 | 0.074 |
ampS | 0.764 | 0.761 | -0.041 |
ampSmN | 0.812 | 0.839 | 0.008 |
itcSNR | 0.817 | 0.840 | 0.163 |
itcS | 0.748 | 0.769 | 0.037 |
itcSmN | 0.822 | 0.840 | 0.192 |
Analysis of EEG data in 1-min blocks.
Compares no vs high load.
The data in each 3-min block were analyzed by minute (this was done during preprocessing in MNE-python). For each minute, mean amp (and itc) were computed and then averaged across the four blocks of load.
Note that the R output uses the term “block,” but this is meant to refer to “minute.”
# The data in each 3-min block are analyzed by minute. For each minute, the amp and itc are computed and then averaged across the four blocks of load.
Dtmp1a = subset(D, select=c(fp,
m1noampSmN, m2noampSmN, m3noampSmN,
m1hiampSmN, m2hiampSmN, m3hiampSmN))
Dtmp1b = subset(D, select=c(fp,
m1noampSNR, m2noampSNR, m3noampSNR,
m1hiampSNR, m2hiampSNR, m3hiampSNR))
Dtmp1c = subset(D, select=c(fp,
m1noampS, m2noampS, m3noampS,
m1hiampS, m2hiampS, m3hiampS))
Dtmp1d = subset(D, select=c(fp,
m1noitcSmN, m2noitcSmN, m3noitcSmN,
m1hiitcSmN, m2hiitcSmN, m3hiitcSmN))
Dtmp1e = subset(D, select=c(fp,
m1noitcSNR, m2noitcSNR, m3noitcSNR,
m1hiitcSNR, m2hiitcSNR, m3hiitcSNR))
Dtmp1f = subset(D, select=c(fp,
m1noitcS, m2noitcS, m3noitcS,
m1hiitcS, m2hiitcS, m3hiitcS))
Dtmp1 = list(Dtmp1a, Dtmp1b, Dtmp1c, Dtmp1d, Dtmp1e, Dtmp1f)
# rename variables to be able to call computeANOVA
for (i in 1:6){
tmp = Dtmp1[[i]]
colnames(tmp) <- c('fp','no1','no2','no3','hi1','hi2','hi3')
Dtmp1[[i]] = tmp
}
Dvars = c('Amplitude_SmN','Amplitude_SNR','Amplitude_S',
'Intertrial_Coherence_SmN','Intertrial_Coherence_SNR','Intertrial_Coherence_S')
Fres = (matrix(ncol = 5, nrow = length(Dvars)))
Fres = as.data.frame(Fres)
colnames(Fres) = c('Variable','Overall_Interaction_p','Linear_Interaction_p','BF01_Interaction', 'BF01_error%')
## =====================================================================
## Amplitude_SmN
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 0.2673304 0.2276504 0.3070103
## no 2 45 0.2598172 0.2211833 0.2984511
## no 3 45 0.2497098 0.2107499 0.2886697
## high 1 45 0.2541013 0.2142862 0.2939163
## high 2 45 0.2624151 0.2273724 0.2974579
## high 3 45 0.2491483 0.2101146 0.2881820
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 17.8453 1 3.8880 44 201.9542 <2e-16 ***
## load 0.0009 1 0.1009 44 0.4096 0.5255
## block 0.0079 2 0.2244 88 1.5535 0.2172
## load:block 0.0032 2 0.1359 88 1.0224 0.3640
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.82977 0.0181
## load:block 0.95715 0.3900
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.85453 0.2200
## load:block 0.95891 0.3615
##
## HF eps Pr(>F[HF])
## block 0.8856283 0.2195016
## load:block 1.0016340 0.3639655
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 -0.0063338 1 0.026833 1.2132 1 44 0.2767
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 7.586289 ±1.13%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Amplitude_SNR
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 4.866360 4.164390 5.568330
## no 2 45 4.721056 4.030760 5.411352
## no 3 45 4.492041 3.798660 5.185421
## high 1 45 4.751134 4.056132 5.446137
## high 2 45 4.624352 3.997678 5.251026
## high 3 45 4.337621 3.682142 4.993100
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 5793.2 1 1221.12 44 208.7440 < 2.2e-16 ***
## load 1.0 1 46.72 44 0.9480 0.335543
## block 7.2 2 42.89 88 7.3915 0.001078 **
## load:block 0.0 2 32.50 88 0.0529 0.948501
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.86049 0.03954
## load:block 0.96500 0.46483
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.87757 0.001823 **
## load:block 0.96618 0.944152
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.9111302 0.001578235
## load:block 1.0097561 0.948500839
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 0.019597 1 0.00092632 0.040796 1 44 0.8409
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 13.45949 ±2.06%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Amplitude_S
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 0.3580625 0.3189450 0.3971799
## no 2 45 0.3520963 0.3133708 0.3908217
## no 3 45 0.3438373 0.3054124 0.3822621
## high 1 45 0.3372365 0.2992148 0.3752582
## high 2 45 0.3503366 0.3156798 0.3849934
## high 3 45 0.3423072 0.3057068 0.3789076
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 32.569 1 3.7216 44 385.0554 <2e-16 ***
## load 0.004 1 0.0794 44 2.4156 0.1273
## block 0.003 2 0.2181 88 0.6052 0.5482
## load:block 0.006 2 0.1208 88 2.0105 0.1400
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.87166 0.05218
## load:block 0.95819 0.39926
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.88626 0.5292
## load:block 0.95987 0.1421
##
## HF eps Pr(>F[HF])
## block 0.9207657 0.5352293
## load:block 1.0027088 0.1400295
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 -0.0096479 1 0.065045 3.0611 1 44 0.08716 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 4.067075 ±2.01%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Intertrial_Coherence_SmN
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 0.4067182 0.3510711 0.4623653
## no 2 45 0.3853908 0.3349144 0.4358673
## no 3 45 0.3672219 0.3122740 0.4221698
## high 1 45 0.3946982 0.3373811 0.4520153
## high 2 45 0.3846980 0.3348897 0.4345064
## high 3 45 0.3593230 0.3056851 0.4129609
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 39.608 1 7.5927 44 229.5275 < 2.2e-16 ***
## load 0.003 1 0.2798 44 0.5010 0.4827765
## block 0.064 2 0.3156 88 8.8697 0.0003096 ***
## load:block 0.001 2 0.2486 88 0.2618 0.7702622
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.89743 0.097623
## load:block 0.89406 0.090022
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.90698 0.0005117 ***
## load:block 0.90421 0.7480920
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.9437688 0.0004194039
## load:block 0.9406909 0.7568612430
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 -0.0020605 1 0.0014841 0.065398 1 44 0.7994
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 11.65029 ±2.13%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Intertrial_Coherence_SNR
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 4.049719 3.618167 4.481271
## no 2 45 3.800942 3.421601 4.180284
## no 3 45 3.695258 3.292194 4.098322
## high 1 45 3.941257 3.506068 4.376446
## high 2 45 3.813865 3.459928 4.167802
## high 3 45 3.625299 3.226132 4.024466
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 3942.1 1 416.52 44 416.4325 < 2.2e-16 ***
## load 0.2 1 15.98 44 0.5658 0.4559
## block 5.1 2 20.47 88 10.9243 5.785e-05 ***
## load:block 0.2 2 18.23 88 0.4179 0.6597
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.90886 0.12813
## load:block 0.90170 0.10810
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.91647 0.0001032 ***
## load:block 0.91050 0.6408600
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.9543252 7.935582e-05
## load:block 0.9476846 6.489116e-01
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 -0.019251 1 0.0020468 0.090243 1 44 0.7653
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 9.601923 ±9.03%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## Intertrial_Coherence_S
## =====================================================================
##
##
## Descriptives
## ============
## load block N Mean CI_LL CI_UL
## no 1 45 0.5426056 0.4872752 0.5979359
## no 2 45 0.5258366 0.4752990 0.5763743
## no 3 45 0.5057792 0.4508772 0.5606812
## high 1 45 0.5311734 0.4741227 0.5882242
## high 2 45 0.5232539 0.4727252 0.5737826
## high 3 45 0.4997347 0.4467401 0.5527294
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 73.401 1 7.5609 44 427.1518 < 2e-16 ***
## load 0.003 1 0.2858 44 0.4646 0.49906
## block 0.054 2 0.3242 88 7.2961 0.00117 **
## load:block 0.001 2 0.2362 88 0.1667 0.84673
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## block 0.90138 0.107279
## load:block 0.89567 0.093588
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## block 0.91023 0.001708 **
## load:block 0.90553 0.825970
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## HF eps Pr(>F[HF])
## block 0.9473896 0.001460326
## load:block 0.9421621 0.834392724
##
##
## Linear interaction contrast
## ===========================
## Multivariate Test: Pillai test statistic
## P-value adjustment method: holm
## Value Df test stat approx F num Df den Df Pr(>F)
## load1 : block1 -0.0026938 1 0.0026347 0.11623 1 44 0.7348
##
##
##
## BF without vs with interaction
## ==============================
## Bayes factor analysis
## --------------
## [1] load + block + fp : 12.44145 ±1.72%
##
## Against denominator:
## eeg_dv ~ load + block + load:block + fp
## ---
## Bayes factor type: BFlinearModel, JZS
Summary of interaction analyses:
write.table(Fres, file = file.path(dir_fig,
paste0("table_ANOVA_by_minute_interaction_p.tsv")),
row.names = F, dec = ".", sep = "\t")
Fres[,2:5] = round(Fres[,2:5], digits = 3)
Fres[Fres < 0.001] = 0.001
Fres %>%
kable(digits = 3) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | Overall_Interaction_p | Linear_Interaction_p | BF01_Interaction | BF01_error% |
---|---|---|---|---|
Amplitude_SmN | 0.362 | 0.277 | 7.586 | 1.126 |
Amplitude_SNR | 0.944 | 0.841 | 13.459 | 2.061 |
Amplitude_S | 0.142 | 0.087 | 4.067 | 2.014 |
Intertrial_Coherence_SmN | 0.748 | 0.799 | 11.650 | 2.135 |
Intertrial_Coherence_SNR | 0.641 | 0.765 | 9.602 | 9.027 |
Intertrial_Coherence_S | 0.826 | 0.735 | 12.441 | 1.723 |
The goal of this exploratory time-frequency analysis was to examine if the 40-Hz signal changed periodically with the onset of the visual stimuli, which were shown every 500 ms (i.e., at 2 Hz). To detect this period change, epochs were rather long (10 s), and each epoch began every 20th visual stimulus (see MNE-python script).
A potential concern is that the 40-Hz response may be confounded by indirect visual effects on the same electrodes as used for ASSRs. That is, the electrodes that were used to record ASSRs may pick up unrelated ERP activity from visual onsets. However, because the response is recorded at 40 Hz whereas visual events occur at 2 Hz, an analysis of only the 40-Hz response should already remove confounding effects of the visual events at 2 Hz (because the frequency is much lower). Accordingly, any 2-Hz activity within the 40-Hz response suggests that the 40-Hz response is actually affected by the visual onsets.
Although results suggest some activity at 2 Hz, there were no differences among the load conditions.
The figure shows amplitude over time (top) and spectrum (bottom). The figure was generated in MNE-python (see script).
#Dtf = read.csv(file.path(dir_tf, "data_audio_signal_noise_tf.tsv"), sep="\t", header=TRUE, dec=".")
Dtf = read.csv("data_audio_signal_noise_tf_amplitude.tsv", sep="\t", header=TRUE, dec=".")
Dvars = c('AmpSmN','AmpS')
Fres = (matrix(ncol = 4, nrow = length(Dvars)))
Fres = as.data.frame(Fres)
colnames(Fres) = c('Variable','P_load','BF01_load', 'BF01_error%')
## =====================================================================
## AmpSmN
## =====================================================================
##
##
## Descriptives
## ============
## load N Mean CI_LL CI_UL
## no 42 0.8405075 -0.1889680 1.869983
## low 42 1.3182676 0.1596759 2.476859
## high 42 1.1394366 0.4187611 1.860112
## very high 42 0.9122387 0.3366768 1.487801
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 186.143 1 1083.90 41 7.0411 0.01128 *
## load 5.998 3 289.46 123 0.8495 0.46939
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## load 0.5855 0.00072565
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## load 0.75449 0.4431
##
## HF eps Pr(>F[HF])
## load 0.800841 0.4487255
##
##
## Polynomial contrasts
## ====================
## Analysis of Variance Table
##
## Response: eeg_dv
## Df Sum Sq Mean Sq F value Pr(>F)
## loadlin 1 0.00 0.0028 0.0012 0.9727
## loadqua 1 5.22 5.2181 2.2174 0.1390
## loadcub 1 0.78 0.7769 0.3301 0.5666
## fp 41 1083.90 26.4367 11.2338 <2e-16 ***
## Residuals 123 289.46 2.3533
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
##
## BF of main effect
## =================
## Bayes factor analysis
## --------------
## [1] fp : 11.8772 ±0.46%
##
## Against denominator:
## eeg_dv ~ load + fp
## ---
## Bayes factor type: BFlinearModel, JZS
## =====================================================================
## AmpS
## =====================================================================
##
##
## Descriptives
## ============
## load N Mean CI_LL CI_UL
## no 42 3.012330 1.686699 4.337962
## low 42 3.310861 1.882000 4.739721
## high 42 3.010470 2.103617 3.917323
## very high 42 2.835109 2.057216 3.613002
##
##
## Anova
## =====
##
## Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
##
## Sum Sq num Df Error SS den Df F value Pr(>F)
## (Intercept) 1554.83 1 1893.07 41 33.6744 8.248e-07 ***
## load 4.91 3 313.58 123 0.6423 0.5892
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
## Mauchly Tests for Sphericity
##
## Test statistic p-value
## load 0.52581 0.00011053
##
##
## Greenhouse-Geisser and Huynh-Feldt Corrections
## for Departure from Sphericity
##
## GG eps Pr(>F[GG])
## load 0.6968 0.5353
##
## HF eps Pr(>F[HF])
## load 0.7350124 0.5431675
##
##
## Polynomial contrasts
## ====================
## Analysis of Variance Table
##
## Response: eeg_dv
## Df Sum Sq Mean Sq F value Pr(>F)
## loadlin 1 1.45 1.454 0.5703 0.4516
## loadqua 1 2.36 2.358 0.9249 0.3381
## loadcub 1 1.10 1.101 0.4317 0.5124
## fp 41 1893.07 46.172 18.1108 <2e-16 ***
## Residuals 123 313.58 2.549
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
##
##
## BF of main effect
## =================
## Bayes factor analysis
## --------------
## [1] fp : 15.1405 ±0.62%
##
## Against denominator:
## eeg_dv ~ load + fp
## ---
## Bayes factor type: BFlinearModel, JZS
Summary of 2-Hz tf analysis:
Fres[,2:4] = round(Fres[,2:4], digits = 3)
Fres[Fres < 0.001] = 0.001
Fres %>%
kable(digits = 3) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"),
full_width = F, position = 'left')
Variable | P_load | BF01_load | BF01_error% |
---|---|---|---|
AmpSmN | 0.449 | 11.877 | 0.456 |
AmpS | 0.543 | 15.141 | 0.617 |