DS001810: eeg dataset, 47 subjects#
EEG study of the attentional blink; before, during, and after transcranial Direct Current Stimulation (tDCS)
Citation: Leon C. Reteig, Lionel A. Newman, K. Richard Ridderinkhof, Heleen A. Slagter (—). EEG study of the attentional blink; before, during, and after transcranial Direct Current Stimulation (tDCS). 10.18112/openneuro.ds001810.v1.1.0
47-participant EEG dataset — EEG study of the attentional blink; before, during, and after transcranial Direct Current Stimulation (tDCS).
Quickstart#
Install
pip install eegdash
Access the data
from eegdash.dataset import DS001810
dataset = DS001810(cache_dir="./data")
# Get the raw object of the first recording
raw = dataset.datasets[0].raw
print(raw.info)
Filter by subject
dataset = DS001810(cache_dir="./data", subject="01")
Advanced query
dataset = DS001810(
cache_dir="./data",
query={"subject": {"$in": ["01", "02"]}},
)
Iterate recordings
for rec in dataset:
print(rec.subject, rec.raw.info['sfreq'])
If you use this dataset in your research, please cite the original authors.
BibTeX
@dataset{ds001810,
title = {EEG study of the attentional blink; before, during, and after transcranial Direct Current Stimulation (tDCS)},
author = {Leon C. Reteig and Lionel A. Newman and K. Richard Ridderinkhof and Heleen A. Slagter},
doi = {10.18112/openneuro.ds001810.v1.1.0},
url = {https://doi.org/10.18112/openneuro.ds001810.v1.1.0},
}
About This Dataset#
AB_tDCS-EEG: EEG data from participants who performed an attentional blink (AB) task before, during and after transcranial Direct Current Stimulation (tDCS). They visited the lab twice (complete data for 40 participants; some did only one session); on each visit they received either anodal or cathodal tDCS.
Both lab visits were about one week apart. During each visit, three EEG files were recorded, each about 20 minutes long: before applying tDCS (“pre”), during tDCS (“tDCS”), and after tDCS (“post”). The order of the visits (anodal vs. cathodal) differs across participants.
Overview
Each block for each visit is considered a session here (you could also argue this dataset should have 2 “sessions” [visits] with 3 “runs” [blocks], but given there was a manipulation between the runs, it seemed better to count everything as a session). So each sub*-folder with complete data has 6 sessions: 1. anodalpost (data from anodal visit, after tDCS) 2. anodalpre (data from anodal visit, before tDCS) 3. anodaltDCS (data from anodal visit, during tDCS) 4. cathodalpost (data from cathodal visit, after tDCS) 5. cathodalpre (data from cathodal visit, before tDCS) 6. cathodaltDCS (data from cathodal visit, during tDCS)
View full README
Overview
Each block for each visit is considered a session here (you could also argue this dataset should have 2 “sessions” [visits] with 3 “runs” [blocks], but given there was a manipulation between the runs, it seemed better to count everything as a session). So each sub*-folder with complete data has 6 sessions: 1. anodalpost (data from anodal visit, after tDCS) 2. anodalpre (data from anodal visit, before tDCS) 3. anodaltDCS (data from anodal visit, during tDCS) 4. cathodalpost (data from cathodal visit, after tDCS) 5. cathodalpre (data from cathodal visit, before tDCS) 6. cathodaltDCS (data from cathodal visit, during tDCS)
See the _sessions.tsv and _sessions.json files in each sub*-folder for details.
Concurrent tDCS-EEG
Recording EEG during tDCS introduces some problems, most importantly blocked channels and artifacts.
Blocked channels
The rubber tDCS electrodes were affixed to the scalp using conductive paste. Because they sat under the EEG headcap, the electrodes blocked a few of the slots, meaning these channels could not be plugged in. The channels affected vary from subject to subject (and even slightly from visit to visit). They are marked with “status” = “bad” in each session’s _channels.tsv file.
The tDCS montage was the following: 1. 7x5 mm electrode centered over F3 (long side parallel to midline; connector at posterior end) 2. 7x5 mm electrode centered on right forehead (approximately Fp2) (short side parallel to midline, connector at lateral end)
Anodal or cathodal tDCS is defined according to the electrode over F3, i.e. “anodal tDCS” means this was the anode (with the cathode over Fp2); “cathodal tDCS” means this was the cathode (with the anode over Fp2).
tDCS artifacts
tDCS was applied at an intensity of 1 mA for 20m (with a 1-minute ramp-up period before, and a 1-minute ramp-down period after). This often caused channels close to the tDCS electrodes to drift outside of the amplifier range, or become very noisy otherwise. This occurred mostly in the block during tDCS obviously, but sometimes channels take a while to “recover”, so they can still be affected during the post-block.
The signal on channels further away from the electrodes normally looks fine (one exception is at the exact moment the ramp-down ends, which causes a huge artifact across all channels). However, though most of the artifacts should be gone after DC correction, this does not mean that the channels are completely artifact-free. Compared to the EEG signal, the tDCS artifact is massive, and can cause further problems by nonlinearly interacting with other physiological signals, such as heart-rate and respiration. However, assuming these artifacts do not vary systematically across conditions and time, comparing event-related responses across conditions should be less of a problem. See [1,2] for more information.
Triggers
The event codes (see _events.json and each session’s _events.tsv file) are all in the 61000 range. This differs from the original values sent out (see below for a list of those). The transformation happens when reading the .*bdf sourcedata files, e.g. with both EEGLAB and fieldtrip. Because the data were converted to the BIDS-compliant BrainVision format using fieldtrip, the trigger codes are now all >61000.
The problem comes from that the event codes were sent in 8-bit, but are read in 16 bits. Since bits 13-16 on the trigger channel are always open, the event codes are shifted by 1111000000000000 in binary, which is 61440. The original trigger codes were: “10”: “onset of pre-stream fixation cross (duration: 1500 ms)”, “23”: “onset of letter stream; lag 3 trial (duration: 1375 ms)”, “28”: “onset of letter stream; lag 8 trial (duration: 1375 ms)”, “31”: “onset of T1 (first target, in red, duration: 91.66 ms)”, “32”: “onset of T2 (second target, in green duration: 91.66 ms)”, “40”: “onset of post-stream fixation cross (duration: 1000 ms)”, “50”: “onset of T1 question (‘Which letter was red?’)”, “60”: “onset of T2 question (‘Which letter was green?’); T1 question answered incorrectly”, “61”: “onset of T2 question (‘Which letter was green?’); T1 question answered correctly”, “70”: “onset of post-response fixation cross (duration: 250 ms); T2 question answered incorrectly”, “71”: “onset of post-response fixation cross (duration: 250 ms); T2 question answered correctly”, “254”: “trigger to start EEG recording (occurs at start of block after a break)” When reading in the data, 61440 will likely be added to each of them.
Exceptions
Was unable to create BrainVision format data for sub-07/cathodal-post; fieldtrip crashed on the .bdf file in sourcedata:
- Error in read_biosemi_bdf>readLowLevel (line 274)
buf = read_24bit(filename, offset, numwords);
The .bdf seems to be read fine by EEGLAB, so still included it in case this can be solved.
Cohort#
Dataset Statistics#
Age distribution by gender (n=41, range 18–28 yr, mean 20.9 yr)
Sex composition
Channel counts: 73 ch (n=263 recordings)
Sampling frequencies: 512.0 Hz (n=263 recordings)
Total recording duration: 91 h
Signal · Electrodes & live trace#
Live trace viewer — sub-13 · ses-anodalpre · task-attentionalblink
Showing one representative recording out of
47 subjects and 263 recordings in this dataset.
Browse the full set on OpenNeuro;
drop any other _eeg.{set,edf,bdf,vhdr} file onto the
viewer (or pass ?eeg=<url>) to inspect it.
Electrode layout — EEG · 64 sensors — 64 channels
NEMAR Processing Statistics#
The plots below are generated by NEMAR’s automated EEG pipeline. The histogram shows pipeline success for data cleaning and ICA decomposition, the percentage of data frames and EEG channels retained after artefact removal, line noise per channel (RMS, dB), and the age/gender distribution of participants.
HED event descriptors word cloud
Manifest#
File Explorer#
Browse the BIDS file structure of this dataset. Records are fetched on demand from the EEGDash catalog the first time you open the explorer.
Full dataset metadata table
Dataset ID |
|
Title |
EEG study of the attentional blink; before, during, and after transcranial Direct Current Stimulation (tDCS) |
Author (year) |
|
Canonical |
— |
Importable as |
|
Year |
— |
Authors |
Leon C. Reteig, Lionel A. Newman, K. Richard Ridderinkhof, Heleen A. Slagter |
License |
CC0 |
Citation / DOI |
|
Source links |
OpenNeuro | NeMAR | Source URL |
Copy-paste BibTeX
@dataset{ds001810,
title = {EEG study of the attentional blink; before, during, and after transcranial Direct Current Stimulation (tDCS)},
author = {Leon C. Reteig and Lionel A. Newman and K. Richard Ridderinkhof and Heleen A. Slagter},
doi = {10.18112/openneuro.ds001810.v1.1.0},
url = {https://doi.org/10.18112/openneuro.ds001810.v1.1.0},
}
API Reference#
eegdash.datasetEEGDashDatasetDS001810 · Reteig2019eegdash/dataset/registry.py · [source ↗]- class eegdash.dataset.DS001810(cache_dir: str, query: dict | None = None, s3_bucket: str | None = None, **kwargs)[source]#
EEG study of the attentional blink; before, during, and after transcranial Direct Current Stimulation (tDCS)
- Study:
ds001810(OpenNeuro)- Author (year):
Reteig2019- Canonical:
—
Also importable as:
DS001810,Reteig2019.Modality:
eeg. Subjects: 47; recordings: 263; tasks: 1.- Parameters:
cache_dir (str | Path) – Directory where data are cached locally.
query (dict | None) – Additional MongoDB-style filters to AND with the dataset selection. Must not contain the key
dataset.s3_bucket (str | None) – Base S3 bucket used to locate the data.
**kwargs (dict) – Additional keyword arguments forwarded to
EEGDashDataset.
- data_dir#
Local dataset cache directory (
cache_dir / dataset_id).- Type:
Path
Notes
Each item is a recording; recording-level metadata are available via
dataset.description.querysupports MongoDB-style filters on fields inALLOWED_QUERY_FIELDSand is combined with the dataset filter. Dataset-specific caveats are not provided in the summary metadata.References
OpenNeuro dataset: https://openneuro.org/datasets/ds001810 NeMAR dataset: https://nemar.org/dataexplorer/detail?dataset_id=ds001810 DOI: https://doi.org/10.18112/openneuro.ds001810.v1.1.0 NEMAR citation count: 6
Examples
>>> from eegdash.dataset import DS001810 >>> dataset = DS001810(cache_dir="./data") >>> recording = dataset[0] >>> raw = recording.load()
- __init__(cache_dir: str, query: dict | None = None, s3_bucket: str | None = None, **kwargs)[source]#
- save(path: str, overwrite: bool = False, offset: int = 0)[source]#
Save datasets to files by creating one subdirectory for each dataset:
path/ 0/ 0-raw.fif | 0-epo.fif description.json raw_preproc_kwargs.json (if raws were preprocessed) window_kwargs.json (if this is a windowed dataset) window_preproc_kwargs.json (if windows were preprocessed) target_name.json (if target_name is not None and dataset is raw) 1/ 1-raw.fif | 1-epo.fif description.json raw_preproc_kwargs.json (if raws were preprocessed) window_kwargs.json (if this is a windowed dataset) window_preproc_kwargs.json (if windows were preprocessed) target_name.json (if target_name is not None and dataset is raw)
- Parameters:
path (str) –
- Directory in which subdirectories are created to store
-raw.fif | -epo.fif and .json files to.
overwrite (bool) – Whether to delete old subdirectories that will be saved to in this call.
offset (int) – If provided, the integer is added to the id of the dataset in the concat. This is useful in the setting of very large datasets, where one dataset has to be processed and saved at a time to account for its original position.
BaseDataset from braindecode — windowed via create_windows_from_events.braindecodeDataLoader; supports parallel workers and on-the-fly augmentations.pytorchdatasets.load_dataset("EEGDash/ds001810").huggingfaceSwap any load_dataset(...) call for ds001810 to reproduce the tutorial on this dataset.
Citation
Leon C. Reteig, Lionel A. Newman, K. Richard Ridderinkhof, Heleen A. Slagter (n.d.). EEG study of the attentional blink; before, during, and after transcranial Direct Current Stimulation (tDCS). 10.18112/openneuro.ds001810.v1.1.0
Provenance
¹Contributed to openneuro in BIDS format.
²Curated & ingested by the EEGDash catalog; see CITATION.cff for canonical reference.
³Persistent identifier: 10.18112/openneuro.ds001810.v1.1.0.
See Also#
eegdash.dataset.EEGDashDataseteegdash.dataset