DS004152: eeg dataset, 21 subjects#
Drum Trainer
Citation: Cameron D. Hassall, Yan Yan, Laurence T. Hunt (—). Drum Trainer. 10.18112/openneuro.ds004152.v1.1.2
21-participant EEG dataset — Drum Trainer.
Quickstart#
Install
pip install eegdash
Access the data
from eegdash.dataset import DS004152
dataset = DS004152(cache_dir="./data")
# Get the raw object of the first recording
raw = dataset.datasets[0].raw
print(raw.info)
Filter by subject
dataset = DS004152(cache_dir="./data", subject="01")
Advanced query
dataset = DS004152(
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{ds004152,
title = {Drum Trainer},
author = {Cameron D. Hassall and Yan Yan and Laurence T. Hunt},
doi = {10.18112/openneuro.ds004152.v1.1.2},
url = {https://doi.org/10.18112/openneuro.ds004152.v1.1.2},
}
About This Dataset#
Twenty-one participants learned to play two drumming patterns (pattern 1: AABA, pattern 2: AAABAA) at three different tempos (fast: 150 bpm, medium: 100 bpm, slow: 60 bpm). Responses were recorded using the f and j keys on a standard keyboard. Visual feedback in the form of a coloured circle coincided with each button press and indicated whether the response was early, on time, or late. Feedback was determined by comparing the response time, relative to the previous response, to a window around the target duration. The window was adapted trial-by-trial to ensure that roughly half the outcomes were “on time”.
Participant 12 should be excluded from event-locked analyses due to bad triggers (trigger cable was partially disconnected).
Timing Repeat for 72 trials: fixation dot (until response) -> feedback circle (50 ms) Condition Codes 1: “Fast, pattern 1, left-hand start” 2: “Fast, pattern 1, right-hand start” 3: “Fast, pattern 2, left-hand start” 4: “Fast, pattern 2, right-hand start” 5: “Medium, pattern 1, left-hand start” 6: “Medium, pattern 1, right-hand start” 7: “Medium, pattern 2, left-hand start” 8: “Medium, pattern 2, right-hand start” 9: “Slow, pattern 1, left-hand start” 10: “Slow, pattern 1, right-hand start” 11: “Slow, pattern 2, left-hand start” 12: “Slow, pattern 2, right-hand start” Trigger Modifiers Add 0: Metronome beat (pre-block) Add 20: Ready screen (pre-block) Add 40: First response (can’t be early, on time, or late) Add 60: Early response Add 80: On time response Add 100: Late response Add 120: Red X (wrong key pressed)
Drum Trainer
Cohort#
Dataset Statistics#
Age distribution by gender (n=21, range 21–41 yr, mean 25.8 yr)
Sex composition
Channel counts: 31 ch (n=21 recordings)
Sampling frequencies: 1000.0 Hz (n=21 recordings)
Total recording duration: 11 h 27 min
Signal · Electrodes & live trace#
Live trace viewer — sub-13 · task-drumtrainer
Showing one representative recording out of
21 subjects and 21 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 · 31 sensors — 31 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 |
Drum Trainer |
Author (year) |
|
Canonical |
— |
Importable as |
|
Year |
— |
Authors |
Cameron D. Hassall, Yan Yan, Laurence T. Hunt |
License |
CC0 |
Citation / DOI |
|
Source links |
OpenNeuro | NeMAR | Source URL |
Copy-paste BibTeX
@dataset{ds004152,
title = {Drum Trainer},
author = {Cameron D. Hassall and Yan Yan and Laurence T. Hunt},
doi = {10.18112/openneuro.ds004152.v1.1.2},
url = {https://doi.org/10.18112/openneuro.ds004152.v1.1.2},
}
API Reference#
eegdash.datasetEEGDashDatasetDS004152 · Hassall2022_Drumeegdash/dataset/registry.py · [source ↗]- class eegdash.dataset.DS004152(cache_dir: str, query: dict | None = None, s3_bucket: str | None = None, **kwargs)[source]#
Drum Trainer
- Study:
ds004152(OpenNeuro)- Author (year):
Hassall2022_Drum- Canonical:
—
Also importable as:
DS004152,Hassall2022_Drum.Modality:
eeg. Subjects: 21; recordings: 21; 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/ds004152 NeMAR dataset: https://nemar.org/dataexplorer/detail?dataset_id=ds004152 DOI: https://doi.org/10.18112/openneuro.ds004152.v1.1.2 NEMAR citation count: 1
Examples
>>> from eegdash.dataset import DS004152 >>> dataset = DS004152(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/ds004152").huggingfaceSwap any load_dataset(...) call for ds004152 to reproduce the tutorial on this dataset.
Citation
Cameron D. Hassall, Yan Yan, Laurence T. Hunt (n.d.). Drum Trainer. 10.18112/openneuro.ds004152.v1.1.2
Provenance
¹Contributed to openneuro in BIDS format.
²Curated & ingested by the EEGDash catalog; see CITATION.cff for canonical reference.
³Persistent identifier: 10.18112/openneuro.ds004152.v1.1.2.
Related & sibling datasets
+ 1 more — see See Also below →
See Also#
eegdash.dataset.EEGDashDataseteegdash.dataset