Supplementary Materials for the paper:
Also available on GitLab.
\(\leftarrow\) previous | home | next \(\rightarrow\)
Simulation I: Variation in amplitude
Simulation II: Adding random noise
Simulation II (b): Reduced variation in amplitude
Simulation III: Modeling individual trends
Load packages for analysis and visualization:
## Loading required package: nlme
## This is mgcv 1.8-24. For overview type 'help("mgcv-package")'.
## Loading required package: plotfunctions
## Loaded package itsadug 2.3 (see 'help("itsadug")' ).
Function for simulations:
The sineWave function can modify sine waves in different ways:
Changes the amplitude
Changes the latencies of the peaks, stretching the signal
Adds a linear slope to the sine wave, tilting the signal around x=0
The red lines in the example plots below show manipulations of parameters a, b, and c respectively.
Note: In the simulations below only parameter a (amplitude) is manipulated for illustration purposes. However, we do not assume that the pupil dilation trials only differ in amplitude. As Figure 1 in the paper indicates, there is huge variation between individual trials in amplitude, number of peaks, peak latency, and slope.
n <- 250
# Set seed:
set.seed(427)
# Define x range for simulations below:
x <- seq(0,2*pi, length=100)
# Manipulation: random amplitudes (> 0.1)
a <- rnorm(n, mean=1, sd=.25)
while(min(a) < 0.1){
a <- rnorm(n, mean=1, sd=.25)
}
# Other parameters sine wave fixed:
b <- rep(1, n)
c <- rep(0, n)
# Create data frame with n sine waves based on the parameters
sim <- mapply(function(x1,x2,x3){sineWave(x,x1,x2,x3)},a,b,c)
datsim <- data.frame(x=rep(x,n),
y1=as.vector(sim),
trial=as.factor(rep(1:n, each=length(x))))
Visualization of all simulated data:
Run simple GAM model to capture average trend:
##
## Family: gaussian
## Link function: identity
##
## Formula:
## y1 ~ s(x)
##
## Parametric coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.589e-16 1.108e-03 0 1
##
## Approximate significance of smooth terms:
## edf Ref.df F p-value
## s(x) 8.987 9 46163 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## R-sq.(adj) = 0.943 Deviance explained = 94.3%
## fREML = -8028.7 Scale est. = 0.030701 n = 25000
Below we have plotted 10 randomly selected modified sine waves (of the 250 in total), and the model fit for the sine waves.
Selection of 10 random trials, and the residuals and fitted values of the GAM model:
10 Randomly selected modified sine waves (of the 250 in total), and the model fit for the sine waves (red thick solid line).
par(cex=1.1)
emptyPlot(c(0,6), c(-1.5,1.5), h0=0,
main='Simulation 1', ylab="y", xlab="x", las=1)
# plot individual curves
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$y1, col=alpha(1,f=.25), xpd=T)
}
# plot model curve
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$fit,
col='indianred', lwd=2, xpd=T)
}
# legend
legend('bottomleft', legend=c('data','model'),
col=c(alpha(1),'indianred'), lwd=c(1,2),
bty='n', xpd=T)
Residuals of the model for the same 10 sine waves.
emptyPlot(c(0,6), c(-1.5,1.5), h0=0,
main='Residuals', ylab="Residuals", xlab="x", las=1)
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$res, col=alpha(1, f=.25), xpd=T)
}
Autocorrelation of the model’s residuals (all 250 sine waves) for each lag (x-axis).
acf_plot(resid(mSim1), split_by=list(trial=datsim$trial),
main='', bty='n', ylab='autocorrelation', xlab='lag', las=1)
title(main='ACF residuals')
(See the results of Simulation II for the middle row of Figure 10.)
When independent noise ( \(u \sim \mathcal{N}(0, .25)\) )was added to the same simulation data as in Simulation I, the autocorrelation was reduced in a GAM with exactly the same model specification.
# generate random noise, add to each simulated measurement
datsim$n <- rnorm(nrow(datsim), 0, .1)
datsim$y2 <- datsim$y+datsim$n
# run GAM model
mSim2 <- bam(y2 ~ s(x), data=datsim, discrete = TRUE)
summary(mSim2)
##
## Family: gaussian
## Link function: identity
##
## Formula:
## y2 ~ s(x)
##
## Parametric coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.0004277 0.0012671 0.338 0.736
##
## Approximate significance of smooth terms:
## edf Ref.df F p-value
## s(x) 8.982 9 35318 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## R-sq.(adj) = 0.927 Deviance explained = 92.7%
## fREML = -4679.5 Scale est. = 0.040138 n = 25000
Below we have plotted the same 10 randomly selected modified sine waves (of the 250 in total), and the model fit for the sine waves.
Selection of 10 random trials, and the residuals and fitted values of the GAM model:
10 Randomly selected modified sine waves (of the 250 in total), and the model fit for the sine waves (red thick solid line).
par(cex=1.1)
emptyPlot(c(0,6), c(-1.5,1.5), h0=0,
main='Simulation 1', ylab="y", xlab="x", las=1)
# plot individual curves
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$y2, col=alpha(1,f=.25), xpd=T)
}
# plot model curve
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$fit,
col='indianred', lwd=2, xpd=T)
}
# legend
legend('bottomleft', legend=c('data','model'),
col=c(alpha(1),'indianred'), lwd=c(1,2),
bty='n', xpd=T)
Residuals of the model for the same 10 sine waves.
emptyPlot(c(0,6), c(-1.5,1.5), h0=0,
main='Residuals', ylab="Residuals", xlab="x", las=1)
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$res, col=alpha(1, f=.25), xpd=T)
}
Autocorrelation of the model’s residuals (all 250 sine waves) for each lag (x-axis).
acf_plot(resid(mSim2), split_by=list(trial=datsim$trial),
main='', bty='n', ylab='autocorrelation', xlab='lag', las=1)
title(main='ACF residuals')
(See the results of Simulation III for the bottom row of Figure 10.)
When a new data set is created with less variation in amplitudes between the individual trials (\(a \sim \mathcal{N}(1, .10)\)), but the same noise distribution (\(u \sim \mathcal{N}(0,.25)\)), the smaller variation in amplitudes further reduces the autocorrelation.
n <- 250
# Set seed:
set.seed(427)
# Define x range for simulations below:
x <- seq(0,2*pi, length=100)
# Manipulation: random amplitudes (> 0.1)
a <- rnorm(n, mean=1, sd=.1)
while(min(a) < 0.1){
a <- rnorm(n, mean=1, sd=.1)
}
# Other parameters sine wave fixed:
b <- rep(1, n)
c <- rep(0, n)
# Create data frame with n sine waves based on the parameters
sim <- mapply(function(x1,x2,x3){sineWave(x,x1,x2,x3)},a,b,c)
datsim2 <- data.frame(x=rep(x,n),
y1=as.vector(sim),
trial=as.factor(rep(1:n, each=length(x))))
# generate random noise, add to each simulated measurement
datsim2$n <- rnorm(nrow(datsim2), 0, .1)
datsim2$y2 <- datsim2$y+datsim2$n
Visualization of all new simulated data:
Run simple GAM model to capture average trend:
##
## Family: gaussian
## Link function: identity
##
## Formula:
## y2 ~ s(x)
##
## Parametric coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.0004277 0.0007666 0.558 0.577
##
## Approximate significance of smooth terms:
## edf Ref.df F p-value
## s(x) 8.993 9 94765 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## R-sq.(adj) = 0.972 Deviance explained = 97.2%
## fREML = -17239 Scale est. = 0.014691 n = 25000
Below we have plotted 10 randomly selected modified sine waves (of the 250 in total), and the model fit for the sine waves.
Selection of 10 random trials, and the residuals and fitted values of the GAM model:
10 Randomly selected modified sine waves (of the 250 in total), and the model fit for the sine waves (red thick solid line).
par(cex=1.1)
emptyPlot(c(0,6), c(-1.5,1.5), h0=0,
main='Simulation 2(b)', ylab="y", xlab="x", las=1)
# plot individual curves
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$y2, col=alpha(1,f=.25), xpd=T)
}
# plot model curve
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$fit,
col='indianred', lwd=2, xpd=T)
}
# legend
legend('bottomleft', legend=c('data','model'),
col=c(alpha(1),'indianred'), lwd=c(1,2),
bty='n', xpd=T)
Residuals of the model for the same 10 sine waves.
emptyPlot(c(0,6), c(-1.5,1.5), h0=0,
main='Residuals', ylab="Residuals", xlab="x", las=1)
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$res, col=alpha(1, f=.25), xpd=T)
}
Autocorrelation of the model’s residuals (all 250 sine waves) for each lag (x-axis).
acf_plot(resid(mSim4), split_by=list(trial=datsim$trial),
main='', bty='n', ylab='autocorrelation', xlab='lag', las=1)
title(main='ACF residuals')
Autocorrelation in the residuals will arise if a general nonlinear trend is fitted to data with a large variation in individual trends and a small measurement noise. The most intuitive solution would be to include a random wiggly curve for each individual trial of each individual participant in the model as random effect, in addition to the smooth functions for the different experimental conditions as fixed or random effects.
Here a model with random factor smooths to capture each unique trial is fitted on the same simulation data with noise, as in Simulation II:
##
## Family: gaussian
## Link function: identity
##
## Formula:
## y2 ~ trial + s(x, by = trial)
##
## Parametric coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.0448061 0.0100515 -4.458 8.33e-06 ***
## trial2 -0.0062437 0.0142136 -0.439 0.660463
## trial3 -0.0173806 0.0142160 -1.223 0.221492
## trial4 0.0003166 0.0142158 0.022 0.982231
## trial5 0.0178884 0.0142144 1.258 0.208236
## trial6 -0.0235227 0.0142162 -1.655 0.098011 .
## trial7 -0.0549072 0.0142162 -3.862 0.000113 ***
## trial8 -0.0393474 0.0142160 -2.768 0.005648 **
## trial9 -0.0186044 0.0142157 -1.309 0.190641
## trial10 -0.0181396 0.0142158 -1.276 0.201963
## trial11 -0.0268081 0.0142162 -1.886 0.059342 .
## trial12 -0.0062080 0.0142150 -0.437 0.662319
## trial13 -0.0236573 0.0142160 -1.664 0.096100 .
## trial14 -0.0044511 0.0142151 -0.313 0.754186
## trial15 0.0134035 0.0142150 0.943 0.345736
## trial16 -0.0227301 0.0142158 -1.599 0.109848
## trial17 0.0134074 0.0142152 0.943 0.345603
## trial18 0.0295561 0.0142118 2.080 0.037565 *
## trial19 -0.0125092 0.0142159 -0.880 0.378898
## trial20 -0.0379307 0.0142161 -2.668 0.007632 **
## trial21 -0.0232305 0.0142158 -1.634 0.102245
## trial22 -0.0150614 0.0142161 -1.059 0.289402
## trial23 -0.0101131 0.0142158 -0.711 0.476847
## trial24 -0.0220680 0.0142159 -1.552 0.120592
## trial25 -0.0002421 0.0142152 -0.017 0.986413
## trial26 -0.0222038 0.0142161 -1.562 0.118331
## trial27 -0.0198728 0.0142158 -1.398 0.162146
## trial28 0.0032039 0.0142141 0.225 0.821670
## trial29 -0.0292752 0.0142161 -2.059 0.039477 *
## trial30 -0.0039245 0.0142159 -0.276 0.782502
## trial31 0.0075973 0.0142146 0.534 0.593022
## trial32 0.0216721 0.0142131 1.525 0.127324
## trial33 0.0435084 0.0142115 3.061 0.002205 **
## trial34 -0.0007637 0.0142155 -0.054 0.957159
## trial35 0.0142243 0.0142147 1.001 0.316996
## trial36 -0.0183581 0.0142159 -1.291 0.196585
## trial37 -0.0026633 0.0142155 -0.187 0.851387
## trial38 0.0093564 0.0142140 0.658 0.510381
## trial39 -0.0113183 0.0142161 -0.796 0.425945
## trial40 -0.0303601 0.0142162 -2.136 0.032723 *
## trial41 -0.0309886 0.0142160 -2.180 0.029279 *
## trial42 -0.0249921 0.0142162 -1.758 0.078760 .
## trial43 -0.0052313 0.0142160 -0.368 0.712889
## trial44 -0.0408979 0.0142164 -2.877 0.004021 **
## trial45 -0.0095905 0.0142154 -0.675 0.499901
## trial46 -0.0082268 0.0142152 -0.579 0.562777
## trial47 -0.0080039 0.0142151 -0.563 0.573402
## trial48 0.0010920 0.0142158 0.077 0.938772
## trial49 -0.0112352 0.0142155 -0.790 0.429330
## trial50 -0.0001526 0.0142146 -0.011 0.991437
## trial51 -0.0159789 0.0142159 -1.124 0.261018
## trial52 -0.0125907 0.0142159 -0.886 0.375803
## trial53 -0.0233574 0.0142160 -1.643 0.100389
## trial54 0.0062370 0.0142148 0.439 0.660834
## trial55 -0.0105165 0.0142153 -0.740 0.459429
## trial56 0.0078141 0.0142149 0.550 0.582523
## trial57 -0.0094243 0.0142153 -0.663 0.507357
## trial58 -0.0154122 0.0142157 -1.084 0.278305
## trial59 -0.0199862 0.0142160 -1.406 0.159767
## trial60 -0.0077914 0.0142160 -0.548 0.583650
## trial61 -0.0240501 0.0142162 -1.692 0.090711 .
## trial62 0.0254871 0.0142123 1.793 0.072937 .
## trial63 0.0060110 0.0142154 0.423 0.672410
## trial64 0.0044600 0.0142153 0.314 0.753718
## trial65 0.0211953 0.0142145 1.491 0.135950
## trial66 -0.0397676 0.0142157 -2.797 0.005155 **
## trial67 -0.0039554 0.0142155 -0.278 0.780825
## trial68 -0.0118118 0.0142157 -0.831 0.406039
## trial69 -0.0140966 0.0142157 -0.992 0.321393
## trial70 -0.0080092 0.0142156 -0.563 0.573160
## trial71 -0.0060976 0.0142152 -0.429 0.667962
## trial72 0.0261167 0.0142133 1.837 0.066152 .
## trial73 -0.0004057 0.0142155 -0.029 0.977230
## trial74 -0.0208866 0.0142163 -1.469 0.141792
## trial75 -0.0081115 0.0142161 -0.571 0.568288
## trial76 -0.0348123 0.0142162 -2.449 0.014342 *
## trial77 -0.0171016 0.0142154 -1.203 0.228976
## trial78 -0.0036502 0.0142149 -0.257 0.797343
## trial79 -0.0033207 0.0142156 -0.234 0.815301
## trial80 -0.0351819 0.0142163 -2.475 0.013340 *
## trial81 0.0189666 0.0142151 1.334 0.182134
## trial82 -0.0139310 0.0142157 -0.980 0.327108
## trial83 -0.0343038 0.0142164 -2.413 0.015831 *
## trial84 -0.0202578 0.0142162 -1.425 0.154176
## trial85 -0.0006718 0.0142153 -0.047 0.962307
## trial86 -0.0283928 0.0142163 -1.997 0.045816 *
## trial87 0.0160030 0.0142148 1.126 0.260263
## trial88 0.0070544 0.0142146 0.496 0.619705
## trial89 -0.0082503 0.0142147 -0.580 0.561648
## trial90 -0.0261952 0.0142160 -1.843 0.065393 .
## trial91 -0.0065608 0.0142149 -0.462 0.644414
## trial92 -0.0136820 0.0142151 -0.963 0.335807
## trial93 -0.0024988 0.0142154 -0.176 0.860470
## trial94 -0.0302781 0.0142161 -2.130 0.033195 *
## trial95 0.0002993 0.0142157 0.021 0.983201
## trial96 0.0158288 0.0142143 1.114 0.265471
## trial97 0.0035696 0.0142151 0.251 0.801730
## trial98 -0.0135934 0.0142155 -0.956 0.338960
## trial99 -0.0181002 0.0142153 -1.273 0.202928
## trial100 -0.0231732 0.0142160 -1.630 0.103099
## trial101 -0.0333287 0.0142158 -2.344 0.019062 *
## trial102 -0.0108109 0.0142159 -0.760 0.446976
## trial103 -0.0094258 0.0142154 -0.663 0.507294
## trial104 -0.0193222 0.0142160 -1.359 0.174102
## trial105 0.0123634 0.0142158 0.870 0.384477
## trial106 0.0054219 0.0142147 0.381 0.702889
## trial107 -0.0099640 0.0142153 -0.701 0.483351
## trial108 -0.0119022 0.0142157 -0.837 0.402455
## trial109 -0.0414872 0.0142163 -2.918 0.003523 **
## trial110 -0.0193373 0.0142159 -1.360 0.173761
## trial111 0.0016856 0.0142145 0.119 0.905608
## trial112 0.0039094 0.0142152 0.275 0.783307
## trial113 -0.0178611 0.0142157 -1.256 0.208973
## trial114 -0.0151524 0.0142159 -1.066 0.286491
## trial115 -0.0287734 0.0142162 -2.024 0.042984 *
## trial116 -0.0031225 0.0142159 -0.220 0.826146
## trial117 -0.0121940 0.0142156 -0.858 0.391014
## trial118 0.0086932 0.0142151 0.612 0.540842
## trial119 0.0117755 0.0142142 0.828 0.407435
## trial120 -0.0076281 0.0142158 -0.537 0.591553
## trial121 0.0079687 0.0142149 0.561 0.575084
## trial122 -0.0319566 0.0142162 -2.248 0.024592 *
## trial123 -0.0161980 0.0142159 -1.139 0.254538
## trial124 -0.0042978 0.0142153 -0.302 0.762399
## trial125 -0.0100356 0.0142162 -0.706 0.480244
## trial126 -0.0010121 0.0142159 -0.071 0.943243
## trial127 -0.0052643 0.0142156 -0.370 0.711147
## trial128 -0.0115018 0.0142157 -0.809 0.418472
## trial129 0.0260277 0.0142144 1.831 0.067102 .
## trial130 -0.0128335 0.0142159 -0.903 0.366665
## trial131 0.0135318 0.0142153 0.952 0.341148
## trial132 0.0098489 0.0142143 0.693 0.488390
## trial133 -0.0036719 0.0142154 -0.258 0.796174
## trial134 -0.0222301 0.0142156 -1.564 0.117883
## trial135 -0.0047378 0.0142151 -0.333 0.738915
## trial136 -0.0155072 0.0142157 -1.091 0.275351
## trial137 -0.0301381 0.0142161 -2.120 0.034017 *
## trial138 0.0387864 0.0142119 2.729 0.006355 **
## trial139 -0.0121117 0.0142156 -0.852 0.394223
## trial140 0.0015290 0.0142146 0.108 0.914344
## trial141 -0.0244185 0.0142158 -1.718 0.085863 .
## trial142 -0.0128282 0.0142157 -0.902 0.366859
## trial143 -0.0089744 0.0142158 -0.631 0.527850
## trial144 -0.0057757 0.0142156 -0.406 0.684533
## trial145 -0.0310821 0.0142162 -2.186 0.028797 *
## trial146 0.0219409 0.0142154 1.543 0.122733
## trial147 -0.0229286 0.0142150 -1.613 0.106762
## trial148 -0.0117788 0.0142160 -0.829 0.407362
## trial149 0.0015838 0.0142147 0.111 0.911283
## trial150 -0.0112522 0.0142155 -0.792 0.428632
## trial151 -0.0023376 0.0142155 -0.164 0.869389
## trial152 -0.0249539 0.0142160 -1.755 0.079215 .
## trial153 -0.0209796 0.0142159 -1.476 0.140015
## trial154 -0.0225965 0.0142161 -1.589 0.111962
## trial155 0.0020239 0.0142146 0.142 0.886780
## trial156 -0.0069132 0.0142156 -0.486 0.626750
## trial157 0.0041062 0.0142159 0.289 0.772704
## trial158 0.0028703 0.0142154 0.202 0.839985
## trial159 -0.0038291 0.0142155 -0.269 0.787653
## trial160 -0.0239048 0.0142157 -1.682 0.092663 .
## trial161 0.0165321 0.0142143 1.163 0.244815
## trial162 -0.0312347 0.0142160 -2.197 0.028020 *
## trial163 0.0153501 0.0142132 1.080 0.280158
## trial164 0.0326142 0.0142137 2.295 0.021768 *
## trial165 0.0052373 0.0142150 0.368 0.712553
## trial166 -0.0255308 0.0142160 -1.796 0.072521 .
## trial167 0.0011516 0.0142154 0.081 0.935435
## trial168 -0.0058529 0.0142154 -0.412 0.680542
## trial169 -0.0188676 0.0142162 -1.327 0.184459
## trial170 -0.0004301 0.0142153 -0.030 0.975865
## trial171 0.0084031 0.0142151 0.591 0.554431
## trial172 -0.0028363 0.0142146 -0.200 0.841844
## trial173 -0.0135739 0.0142159 -0.955 0.339669
## trial174 -0.0304413 0.0142156 -2.141 0.032252 *
## trial175 0.0030328 0.0142153 0.213 0.831061
## trial176 -0.0040683 0.0142157 -0.286 0.774739
## trial177 -0.0478157 0.0142160 -3.364 0.000771 ***
## trial178 -0.0015352 0.0142161 -0.108 0.914003
## trial179 -0.0067597 0.0142156 -0.476 0.634425
## trial180 -0.0041545 0.0142157 -0.292 0.770099
## trial181 0.0076702 0.0142154 0.540 0.589500
## trial182 0.0125480 0.0142152 0.883 0.377401
## trial183 -0.0510593 0.0142164 -3.592 0.000329 ***
## trial184 -0.0137907 0.0142151 -0.970 0.331986
## trial185 -0.0095135 0.0142154 -0.669 0.503351
## trial186 -0.0030584 0.0142154 -0.215 0.829652
## trial187 -0.0051046 0.0142154 -0.359 0.719529
## trial188 0.0021376 0.0142140 0.150 0.880461
## trial189 -0.0336857 0.0142162 -2.370 0.017819 *
## trial190 -0.0153873 0.0142149 -1.082 0.279054
## trial191 -0.0232597 0.0142154 -1.636 0.101806
## trial192 -0.0023908 0.0142154 -0.168 0.866441
## trial193 -0.0140847 0.0142154 -0.991 0.321791
## trial194 -0.0082183 0.0142156 -0.578 0.563192
## trial195 -0.0050024 0.0142152 -0.352 0.724914
## trial196 0.0117105 0.0142144 0.824 0.410032
## trial197 -0.0183752 0.0142159 -1.293 0.196169
## trial198 -0.0059162 0.0142151 -0.416 0.677275
## trial199 -0.0357886 0.0142163 -2.517 0.011828 *
## trial200 -0.0166837 0.0142155 -1.174 0.240556
## trial201 -0.0100278 0.0142159 -0.705 0.480575
## trial202 -0.0110761 0.0142155 -0.779 0.435894
## trial203 -0.0131816 0.0142160 -0.927 0.353812
## trial204 -0.0134579 0.0142158 -0.947 0.343810
## trial205 0.0224548 0.0142142 1.580 0.114179
## trial206 0.0107516 0.0142153 0.756 0.449454
## trial207 -0.0082832 0.0142158 -0.583 0.560116
## trial208 0.0098373 0.0142151 0.692 0.488924
## trial209 -0.0270574 0.0142160 -1.903 0.057013 .
## trial210 0.0171916 0.0142153 1.209 0.226531
## trial211 -0.0304897 0.0142152 -2.145 0.031974 *
## trial212 -0.0007462 0.0142156 -0.052 0.958136
## trial213 -0.0191851 0.0142161 -1.350 0.177177
## trial214 -0.0214060 0.0142160 -1.506 0.132140
## trial215 -0.0131901 0.0142160 -0.928 0.353503
## trial216 -0.0400304 0.0142164 -2.816 0.004870 **
## trial217 0.0001929 0.0142154 0.014 0.989171
## trial218 0.0040832 0.0142152 0.287 0.773931
## trial219 -0.0035119 0.0142147 -0.247 0.804861
## trial220 0.0007410 0.0142156 0.052 0.958428
## trial221 -0.0071604 0.0142157 -0.504 0.614480
## trial222 -0.0192046 0.0142159 -1.351 0.176734
## trial223 0.0042889 0.0142155 0.302 0.762877
## trial224 0.0061101 0.0142146 0.430 0.667312
## trial225 0.0159282 0.0142145 1.121 0.262486
## trial226 -0.0197903 0.0142159 -1.392 0.163900
## trial227 0.0213902 0.0142139 1.505 0.132369
## trial228 0.0120998 0.0142156 0.851 0.394688
## trial229 -0.0351724 0.0142160 -2.474 0.013363 *
## trial230 -0.0238141 0.0142160 -1.675 0.093917 .
## trial231 0.0226649 0.0142145 1.594 0.110839
## trial232 0.0054808 0.0142145 0.386 0.699811
## trial233 0.0054083 0.0142145 0.380 0.703593
## trial234 -0.0059254 0.0142152 -0.417 0.676802
## trial235 -0.0020085 0.0142158 -0.141 0.887644
## trial236 -0.0082897 0.0142159 -0.583 0.559812
## trial237 -0.0039969 0.0142161 -0.281 0.778596
## trial238 -0.0221463 0.0142159 -1.558 0.119281
## trial239 -0.0070801 0.0142148 -0.498 0.618432
## trial240 -0.0116395 0.0142160 -0.819 0.412930
## trial241 -0.0338700 0.0142161 -2.383 0.017204 *
## trial242 -0.0048865 0.0142154 -0.344 0.731038
## trial243 -0.0239623 0.0142159 -1.686 0.091885 .
## trial244 -0.0431864 0.0142160 -3.038 0.002385 **
## trial245 0.0079908 0.0142151 0.562 0.574031
## trial246 0.0146130 0.0142145 1.028 0.303942
## trial247 -0.0246198 0.0142162 -1.732 0.083321 .
## trial248 0.0144291 0.0142146 1.015 0.310074
## trial249 0.0102946 0.0142151 0.724 0.468949
## trial250 0.0240344 0.0142117 1.691 0.090818 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Approximate significance of smooth terms:
## edf Ref.df F p-value
## s(x):trial1 7.986 8.728 199.60 <2e-16 ***
## s(x):trial2 7.486 8.433 160.61 <2e-16 ***
## s(x):trial3 8.473 8.922 859.84 <2e-16 ***
## s(x):trial4 8.352 8.883 649.34 <2e-16 ***
## s(x):trial5 7.790 8.623 279.56 <2e-16 ***
## s(x):trial6 8.544 8.941 1048.64 <2e-16 ***
## s(x):trial7 8.547 8.941 1127.40 <2e-16 ***
## s(x):trial8 8.440 8.912 842.70 <2e-16 ***
## s(x):trial9 8.302 8.866 657.47 <2e-16 ***
## s(x):trial10 8.366 8.888 718.43 <2e-16 ***
## s(x):trial11 8.525 8.936 1046.08 <2e-16 ***
## s(x):trial12 8.024 8.747 379.03 <2e-16 ***
## s(x):trial13 8.448 8.914 800.64 <2e-16 ***
## s(x):trial14 8.052 8.760 303.05 <2e-16 ***
## s(x):trial15 8.021 8.745 425.75 <2e-16 ***
## s(x):trial16 8.345 8.881 630.07 <2e-16 ***
## s(x):trial17 8.108 8.786 446.41 <2e-16 ***
## s(x):trial18 6.881 7.975 113.26 <2e-16 ***
## s(x):trial19 8.422 8.906 772.77 <2e-16 ***
## s(x):trial20 8.489 8.926 925.35 <2e-16 ***
## s(x):trial21 8.354 8.884 654.38 <2e-16 ***
## s(x):trial22 8.509 8.931 1044.76 <2e-16 ***
## s(x):trial23 8.387 8.895 668.62 <2e-16 ***
## s(x):trial24 8.394 8.897 720.06 <2e-16 ***
## s(x):trial25 8.104 8.784 504.04 <2e-16 ***
## s(x):trial26 8.514 8.933 972.78 <2e-16 ***
## s(x):trial27 8.373 8.890 757.24 <2e-16 ***
## s(x):trial28 7.681 8.558 233.46 <2e-16 ***
## s(x):trial29 8.505 8.930 964.95 <2e-16 ***
## s(x):trial30 8.426 8.908 707.45 <2e-16 ***
## s(x):trial31 7.867 8.666 289.61 <2e-16 ***
## s(x):trial32 7.322 8.319 173.35 <2e-16 ***
## s(x):trial33 6.792 7.900 93.05 <2e-16 ***
## s(x):trial34 8.228 8.837 500.43 <2e-16 ***
## s(x):trial35 7.909 8.689 331.39 <2e-16 ***
## s(x):trial36 8.412 8.903 784.93 <2e-16 ***
## s(x):trial37 8.240 8.842 590.05 <2e-16 ***
## s(x):trial38 7.636 8.531 212.06 <2e-16 ***
## s(x):trial39 8.482 8.924 831.16 <2e-16 ***
## s(x):trial40 8.549 8.942 1028.86 <2e-16 ***
## s(x):trial41 8.442 8.913 892.90 <2e-16 ***
## s(x):trial42 8.548 8.942 1064.70 <2e-16 ***
## s(x):trial43 8.475 8.922 924.09 <2e-16 ***
## s(x):trial44 8.623 8.959 1362.37 <2e-16 ***
## s(x):trial45 8.209 8.829 497.13 <2e-16 ***
## s(x):trial46 8.126 8.794 450.28 <2e-16 ***
## s(x):trial47 8.049 8.759 415.81 <2e-16 ***
## s(x):trial48 8.352 8.883 680.02 <2e-16 ***
## s(x):trial49 8.224 8.836 543.08 <2e-16 ***
## s(x):trial50 7.870 8.668 330.53 <2e-16 ***
## s(x):trial51 8.398 8.899 786.58 <2e-16 ***
## s(x):trial52 8.427 8.908 789.47 <2e-16 ***
## s(x):trial53 8.459 8.917 813.63 <2e-16 ***
## s(x):trial54 7.963 8.717 318.77 <2e-16 ***
## s(x):trial55 8.144 8.802 491.66 <2e-16 ***
## s(x):trial56 7.975 8.723 358.42 <2e-16 ***
## s(x):trial57 8.139 8.800 505.64 <2e-16 ***
## s(x):trial58 8.343 8.880 643.70 <2e-16 ***
## s(x):trial59 8.444 8.913 900.11 <2e-16 ***
## s(x):trial60 8.458 8.917 875.78 <2e-16 ***
## s(x):trial61 8.567 8.946 1073.95 <2e-16 ***
## s(x):trial62 7.061 8.121 99.36 <2e-16 ***
## s(x):trial63 8.191 8.822 519.66 <2e-16 ***
## s(x):trial64 8.164 8.811 484.33 <2e-16 ***
## s(x):trial65 7.835 8.649 249.16 <2e-16 ***
## s(x):trial66 8.323 8.873 511.15 <2e-16 ***
## s(x):trial67 8.253 8.847 594.90 <2e-16 ***
## s(x):trial68 8.303 8.866 606.71 <2e-16 ***
## s(x):trial69 8.334 8.877 604.96 <2e-16 ***
## s(x):trial70 8.265 8.852 581.71 <2e-16 ***
## s(x):trial71 8.108 8.786 425.84 <2e-16 ***
## s(x):trial72 7.390 8.367 174.44 <2e-16 ***
## s(x):trial73 8.236 8.840 476.71 <2e-16 ***
## s(x):trial74 8.607 8.956 1292.96 <2e-16 ***
## s(x):trial75 8.492 8.927 955.36 <2e-16 ***
## s(x):trial76 8.551 8.942 987.06 <2e-16 ***
## s(x):trial77 8.184 8.819 475.92 <2e-16 ***
## s(x):trial78 7.968 8.719 379.55 <2e-16 ***
## s(x):trial79 8.294 8.863 602.85 <2e-16 ***
## s(x):trial80 8.611 8.956 1363.97 <2e-16 ***
## s(x):trial81 8.080 8.773 413.63 <2e-16 ***
## s(x):trial82 8.317 8.871 619.60 <2e-16 ***
## s(x):trial83 8.644 8.963 1434.18 <2e-16 ***
## s(x):trial84 8.531 8.937 1017.69 <2e-16 ***
## s(x):trial85 8.156 8.807 482.66 <2e-16 ***
## s(x):trial86 8.600 8.954 1141.80 <2e-16 ***
## s(x):trial87 7.947 8.709 362.88 <2e-16 ***
## s(x):trial88 7.877 8.671 248.15 <2e-16 ***
## s(x):trial89 7.896 8.682 320.11 <2e-16 ***
## s(x):trial90 8.461 8.918 835.59 <2e-16 ***
## s(x):trial91 8.003 8.737 395.43 <2e-16 ***
## s(x):trial92 8.048 8.758 402.23 <2e-16 ***
## s(x):trial93 8.207 8.829 539.79 <2e-16 ***
## s(x):trial94 8.499 8.929 987.01 <2e-16 ***
## s(x):trial95 8.322 8.873 555.06 <2e-16 ***
## s(x):trial96 7.753 8.602 248.41 <2e-16 ***
## s(x):trial97 8.082 8.774 418.97 <2e-16 ***
## s(x):trial98 8.215 8.832 613.81 <2e-16 ***
## s(x):trial99 8.136 8.798 393.80 <2e-16 ***
## s(x):trial100 8.457 8.917 908.60 <2e-16 ***
## s(x):trial101 8.361 8.887 745.55 <2e-16 ***
## s(x):trial102 8.414 8.904 723.66 <2e-16 ***
## s(x):trial103 8.202 8.827 517.44 <2e-16 ***
## s(x):trial104 8.474 8.922 940.29 <2e-16 ***
## s(x):trial105 8.381 8.893 804.66 <2e-16 ***
## s(x):trial106 7.889 8.678 323.84 <2e-16 ***
## s(x):trial107 8.156 8.807 527.69 <2e-16 ***
## s(x):trial108 8.319 8.872 658.68 <2e-16 ***
## s(x):trial109 8.588 8.951 1202.67 <2e-16 ***
## s(x):trial110 8.423 8.907 813.30 <2e-16 ***
## s(x):trial111 7.829 8.645 257.32 <2e-16 ***
## s(x):trial112 8.122 8.792 474.14 <2e-16 ***
## s(x):trial113 8.338 8.879 717.34 <2e-16 ***
## s(x):trial114 8.419 8.905 775.23 <2e-16 ***
## s(x):trial115 8.558 8.944 1141.68 <2e-16 ***
## s(x):trial116 8.389 8.896 723.89 <2e-16 ***
## s(x):trial117 8.260 8.850 620.67 <2e-16 ***
## s(x):trial118 8.063 8.766 424.12 <2e-16 ***
## s(x):trial119 7.713 8.578 255.96 <2e-16 ***
## s(x):trial120 8.352 8.883 708.82 <2e-16 ***
## s(x):trial121 7.997 8.734 284.92 <2e-16 ***
## s(x):trial122 8.566 8.946 976.11 <2e-16 ***
## s(x):trial123 8.416 8.904 703.62 <2e-16 ***
## s(x):trial124 8.167 8.812 525.01 <2e-16 ***
## s(x):trial125 8.559 8.945 1091.53 <2e-16 ***
## s(x):trial126 8.399 8.899 741.16 <2e-16 ***
## s(x):trial127 8.298 8.864 646.93 <2e-16 ***
## s(x):trial128 8.312 8.869 652.10 <2e-16 ***
## s(x):trial129 7.793 8.625 312.30 <2e-16 ***
## s(x):trial130 8.430 8.909 823.04 <2e-16 ***
## s(x):trial131 8.147 8.803 494.34 <2e-16 ***
## s(x):trial132 7.754 8.602 268.94 <2e-16 ***
## s(x):trial133 8.206 8.828 439.83 <2e-16 ***
## s(x):trial134 8.274 8.855 640.53 <2e-16 ***
## s(x):trial135 8.072 8.769 382.64 <2e-16 ***
## s(x):trial136 8.320 8.872 697.26 <2e-16 ***
## s(x):trial137 8.502 8.930 971.10 <2e-16 ***
## s(x):trial138 6.928 8.014 91.14 <2e-16 ***
## s(x):trial139 8.264 8.851 600.18 <2e-16 ***
## s(x):trial140 7.854 8.659 320.63 <2e-16 ***
## s(x):trial141 8.346 8.881 697.91 <2e-16 ***
## s(x):trial142 8.343 8.880 691.89 <2e-16 ***
## s(x):trial143 8.349 8.882 698.14 <2e-16 ***
## s(x):trial144 8.300 8.865 600.91 <2e-16 ***
## s(x):trial145 8.532 8.938 1111.18 <2e-16 ***
## s(x):trial146 8.197 8.825 489.90 <2e-16 ***
## s(x):trial147 8.023 8.746 390.46 <2e-16 ***
## s(x):trial148 8.466 8.920 835.53 <2e-16 ***
## s(x):trial149 7.903 8.685 336.48 <2e-16 ***
## s(x):trial150 8.215 8.832 535.85 <2e-16 ***
## s(x):trial151 8.230 8.838 502.85 <2e-16 ***
## s(x):trial152 8.471 8.921 750.61 <2e-16 ***
## s(x):trial153 8.411 8.903 721.20 <2e-16 ***
## s(x):trial154 8.513 8.933 972.65 <2e-16 ***
## s(x):trial155 7.872 8.669 261.90 <2e-16 ***
## s(x):trial156 8.271 8.854 630.98 <2e-16 ***
## s(x):trial157 8.410 8.903 717.60 <2e-16 ***
## s(x):trial158 8.206 8.828 517.22 <2e-16 ***
## s(x):trial159 8.243 8.843 578.89 <2e-16 ***
## s(x):trial160 8.305 8.867 572.97 <2e-16 ***
## s(x):trial161 7.735 8.591 280.87 <2e-16 ***
## s(x):trial162 8.472 8.921 910.56 <2e-16 ***
## s(x):trial163 7.351 8.340 167.02 <2e-16 ***
## s(x):trial164 7.528 8.461 192.88 <2e-16 ***
## s(x):trial165 8.030 8.750 407.45 <2e-16 ***
## s(x):trial166 8.470 8.921 967.65 <2e-16 ***
## s(x):trial167 8.204 8.827 458.88 <2e-16 ***
## s(x):trial168 8.172 8.814 492.63 <2e-16 ***
## s(x):trial169 8.544 8.941 965.18 <2e-16 ***
## s(x):trial170 8.151 8.805 399.15 <2e-16 ***
## s(x):trial171 8.051 8.760 385.83 <2e-16 ***
## s(x):trial172 7.851 8.657 333.18 <2e-16 ***
## s(x):trial173 8.433 8.910 869.29 <2e-16 ***
## s(x):trial174 8.278 8.857 577.41 <2e-16 ***
## s(x):trial175 8.165 8.811 508.51 <2e-16 ***
## s(x):trial176 8.319 8.872 595.48 <2e-16 ***
## s(x):trial177 8.448 8.914 847.82 <2e-16 ***
## s(x):trial178 8.485 8.925 836.86 <2e-16 ***
## s(x):trial179 8.285 8.859 515.30 <2e-16 ***
## s(x):trial180 8.325 8.874 729.35 <2e-16 ***
## s(x):trial181 8.181 8.818 504.02 <2e-16 ***
## s(x):trial182 8.123 8.793 466.39 <2e-16 ***
## s(x):trial183 8.619 8.958 1342.48 <2e-16 ***
## s(x):trial184 8.085 8.776 410.24 <2e-16 ***
## s(x):trial185 8.213 8.831 519.08 <2e-16 ***
## s(x):trial186 8.179 8.817 482.70 <2e-16 ***
## s(x):trial187 8.176 8.816 495.59 <2e-16 ***
## s(x):trial188 7.625 8.524 250.15 <2e-16 ***
## s(x):trial189 8.540 8.940 1078.89 <2e-16 ***
## s(x):trial190 7.999 8.735 349.14 <2e-16 ***
## s(x):trial191 8.196 8.824 540.06 <2e-16 ***
## s(x):trial192 8.202 8.827 548.42 <2e-16 ***
## s(x):trial193 8.206 8.828 448.95 <2e-16 ***
## s(x):trial194 8.278 8.857 612.00 <2e-16 ***
## s(x):trial195 8.087 8.777 428.15 <2e-16 ***
## s(x):trial196 7.771 8.612 270.66 <2e-16 ***
## s(x):trial197 8.404 8.901 768.79 <2e-16 ***
## s(x):trial198 8.062 8.765 408.63 <2e-16 ***
## s(x):trial199 8.610 8.956 1380.21 <2e-16 ***
## s(x):trial200 8.220 8.834 532.15 <2e-16 ***
## s(x):trial201 8.422 8.906 789.38 <2e-16 ***
## s(x):trial202 8.215 8.832 572.67 <2e-16 ***
## s(x):trial203 8.438 8.911 861.71 <2e-16 ***
## s(x):trial204 8.369 8.889 675.35 <2e-16 ***
## s(x):trial205 7.699 8.569 268.02 <2e-16 ***
## s(x):trial206 8.165 8.811 493.64 <2e-16 ***
## s(x):trial207 8.356 8.885 638.71 <2e-16 ***
## s(x):trial208 8.086 8.776 470.96 <2e-16 ***
## s(x):trial209 8.468 8.920 862.07 <2e-16 ***
## s(x):trial210 8.131 8.797 487.81 <2e-16 ***
## s(x):trial211 8.117 8.790 467.33 <2e-16 ***
## s(x):trial212 8.270 8.853 536.64 <2e-16 ***
## s(x):trial213 8.485 8.925 920.49 <2e-16 ***
## s(x):trial214 8.457 8.917 829.67 <2e-16 ***
## s(x):trial215 8.448 8.914 794.13 <2e-16 ***
## s(x):trial216 8.638 8.962 1078.53 <2e-16 ***
## s(x):trial217 8.176 8.816 491.35 <2e-16 ***
## s(x):trial218 8.104 8.785 447.79 <2e-16 ***
## s(x):trial219 7.894 8.681 344.49 <2e-16 ***
## s(x):trial220 8.262 8.850 548.12 <2e-16 ***
## s(x):trial221 8.304 8.866 655.60 <2e-16 ***
## s(x):trial222 8.433 8.910 849.48 <2e-16 ***
## s(x):trial223 8.244 8.843 571.80 <2e-16 ***
## s(x):trial224 7.875 8.670 292.20 <2e-16 ***
## s(x):trial225 7.804 8.631 287.63 <2e-16 ***
## s(x):trial226 8.427 8.908 783.53 <2e-16 ***
## s(x):trial227 7.591 8.503 204.95 <2e-16 ***
## s(x):trial228 8.259 8.850 503.58 <2e-16 ***
## s(x):trial229 8.436 8.910 824.22 <2e-16 ***
## s(x):trial230 8.459 8.917 810.98 <2e-16 ***
## s(x):trial231 7.816 8.638 299.36 <2e-16 ***
## s(x):trial232 7.830 8.646 275.09 <2e-16 ***
## s(x):trial233 7.807 8.633 338.35 <2e-16 ***
## s(x):trial234 8.107 8.786 470.20 <2e-16 ***
## s(x):trial235 8.349 8.882 661.48 <2e-16 ***
## s(x):trial236 8.417 8.905 816.42 <2e-16 ***
## s(x):trial237 8.480 8.924 742.90 <2e-16 ***
## s(x):trial238 8.404 8.901 805.33 <2e-16 ***
## s(x):trial239 7.957 8.713 354.76 <2e-16 ***
## s(x):trial240 8.442 8.912 852.86 <2e-16 ***
## s(x):trial241 8.520 8.934 1030.08 <2e-16 ***
## s(x):trial242 8.193 8.823 519.85 <2e-16 ***
## s(x):trial243 8.392 8.897 717.47 <2e-16 ***
## s(x):trial244 8.451 8.915 902.77 <2e-16 ***
## s(x):trial245 8.046 8.758 409.74 <2e-16 ***
## s(x):trial246 7.811 8.635 337.21 <2e-16 ***
## s(x):trial247 8.565 8.946 1169.10 <2e-16 ***
## s(x):trial248 7.858 8.661 333.42 <2e-16 ***
## s(x):trial249 8.081 8.774 360.57 <2e-16 ***
## s(x):trial250 6.864 7.960 112.50 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## R-sq.(adj) = 0.982 Deviance explained = 98.4%
## fREML = -16993 Scale est. = 0.0099234 n = 25000
Below we have plotted 10 randomly selected modified sine waves (of the 250 in total), and the model fit for the sine waves.
Selection of 10 random trials, and the residuals and fitted values of the GAM model:
10 Randomly selected modified sine waves (of the 250 in total), and the model fit for the sine waves (red thick solid line).
par(cex=1.1)
emptyPlot(c(0,6), c(-1.5,1.5), h0=0,
main='Simulation 3', ylab="y", xlab="x", las=1)
# plot individual curves
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$y2, col=alpha(1,f=.25), xpd=T)
}
# plot model curve
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$fit,
col='indianred', lwd=2, xpd=T)
}
# legend
legend('bottomleft', legend=c('data','model'),
col=c(alpha(1),'indianred'), lwd=c(1,2),
bty='n', xpd=T)
Residuals of the model for the same 10 sine waves.
emptyPlot(c(0,6), c(-1.5,1.5), h0=0,
main='Residuals', ylab="Residuals", xlab="x", las=1)
for(i in unique(dat$trial)){
lines(dat[dat$trial==i,]$x, dat[dat$trial==i,]$res, col=alpha(1, f=.25), xpd=T)
}
Autocorrelation of the model’s residuals (all 250 sine waves) for each lag (x-axis).
acf_plot(resid(mSim3), split_by=list(trial=datsim$trial),
main='', bty='n', ylab='autocorrelation', xlab='lag', las=1)
title(main='ACF residuals')