Code to reproduce figures in Cazares et al., "Aperiodic EEG activity is a domain-specific marker of attentional aging in neurotypical adults."
Status: The figure notebooks are provided now. The processed CSVs that will be in (
data/) will be released upon publication. Until then the notebooks document the exact analysis and plotting for each figure but cannot be run without the data.
This repository reproduces every figure and supplementary table from participant-level processed CSVs. It uses task-free scalp EEG and cognitive-behavioral data from the Dortmund Vital Study, testing whether within-person change in the aperiodic exponent (~5-year follow-up) tracks concurrent change in sustained attention (PVT) and executive function (Simon task).
Processing scripts operate on the Dortmund Vital Study EEG. A subset of the baseline release (n = 208) is available on OpenNeuro (ds005385); the full n = 276 analyzed here is available on reasonable request to Drs. Getzmann and Wascher (see the paper's Data Availability statement).
Raw and intermediate EEG (.fif, epoched, model fits) are not distributed here.
The figure notebooks read only the committed participant-level CSVs in data/, which will be available upon publication, so the figures can be regenerated without the raw recordings.
One notebook per figure and it's supplement. Run the SETUP cell once, then each panel cell in order. Each notebook is standalone, loads a single canonical CSV, and writes per-panel vector PDFs.
- Figure1: The aperiodic exponent declines within individuals. Demographics, spectra, within-person exponent change, mixed-effects age/session effects, band-power specificity, and fitting-range/region robustness.
- Figure2: PVT reaction time slows within individuals. Time-on-task profile, within-person change, age relationships, predictors. (Supp Fig 1: variability/accuracy nulls and regression-to-the-mean controls.)
- Figure3: Exponent change tracks concurrent PVT slowing. Cross-sectional and within-person coupling, full and joint-spectral models. (Supp Fig 2: coupling and spectral-specificity robustness across condition, region, and fitting range.)
- Figure4: Simon response time slows and No-Go accuracy improves. Within-person change, age relationships, predictors. (Supp Fig 3: regression-to-the-mean and partial-age controls.)
- Figure5: The exponent does not track any Simon measure. Coupling models for all three Simon outcomes. (Supp Fig 4: full-model and spectral robustness.)
- Figure6: Out-of-sample predictive modelling. Resample stability, state-specificity (pre- vs post-task), and domain-specificity of the exponent–PVT coupling, plus a single application of the frozen training model to the held-out set. Set
STRATEGY = 'age_only'for Figure 6,'age_x_basemrt'for Supp Fig 5.
Python 3.9.19. Core packages: MNE-Python 1.8.0, mne-icalabel 0.7.0, AutoReject 0.4.3, specparam 2.0.0rc6, statsmodels 0.14.4, scikit-learn 1.4.2, NumPy 1.26.4, pandas 1.5.3, SciPy 1.13.1, Matplotlib 3.9.0, seaborn 0.13.2. See environment.yml for the full reproducible spec.
Path resolution: notebooks read from data/ and write to outputs/ by default, overridable with the RS_EEG_* environment variables (see each SETUP cell).
[awaiting biorxiv approval]
Anthropic's Claude was used to assist with code refactoring, notebook organization, and documentation in this repository. All code was reviewed and verified by the corresponding author (Dr. Christian Cazares), who takes responsibility for its correctness. The study design, analyses, and scientific interpretation are the authors' own.