ON004362: eeg dataset, 109 subjects#
EEG Motor Movement/Imagery Dataset
Citation: Gerwin Schalk, Dennis J McFarland, Thilo Hinterberger, Niels Birbaumer, Jonathan R Wolpaw (—). EEG Motor Movement/Imagery Dataset. 10.82901/nemar.on004362
109-participant EEG dataset — EEG Motor Movement/Imagery Dataset.
Quickstart#
Install
pip install eegdash
Access the data
from eegdash.dataset import ON004362
dataset = ON004362(cache_dir="./data")
# Get the raw object of the first recording
raw = dataset.datasets[0].raw
print(raw.info)
Filter by subject
dataset = ON004362(cache_dir="./data", subject="01")
Advanced query
dataset = ON004362(
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{on004362,
title = {EEG Motor Movement/Imagery Dataset},
author = {Gerwin Schalk and Dennis J McFarland and Thilo Hinterberger and Niels Birbaumer and Jonathan R Wolpaw},
doi = {10.82901/nemar.on004362},
url = {https://doi.org/10.82901/nemar.on004362},
}
About This Dataset#
This data set was originally created and contributed to PhysioBank by Gerwin Schalk (schalk at wadsworth dot org) and his colleagues at the BCI R&D Program, Wadsworth Center, New York State Department of Health, Albany, NY. W.A. Sarnacki collected the data. Aditya Joshi compiled the dataset and prepared the documentation. D.J. McFarland and J.R. Wolpaw were responsible for experimental design and project oversight, respectively. This work was supported by grants from NIH/NIBIB ((EB006356 (GS) and EB00856 (JRW and GS)).
To access the initial publication of this dataset, please visit this link to PhysioBank: https://physionet.org/content/eegmmidb/1.0.0/
This data set consists of over 1500 one- and two-minute EEG recordings, obtained from 109 volunteers, as described below.
DOI ##Acknowledgements
Subjects performed different motor/imagery tasks while 64-channel EEG were recorded using the BCI2000 system (http://www.bci2000.org). Each subject performed 14 experimental runs: two one-minute baseline runs (one with eyes open, one with eyes closed), and three two-minute runs of each of the four following tasks: [Task 1] A target appears on either the left or the right side of the screen. The subject opens and closes the corresponding fist until the target disappears. Then the subject relaxes. [Task 2] A target appears on either the left or the right side of the screen. The subject imagines opening and closing the corresponding fist until the target disappears. Then the subject relaxes. [Task 3] A target appears on either the top or the bottom of the screen. The subject opens and closes either both fists (if the target is on top) or both feet (if the target is on the bottom) until the target disappears. Then the subject relaxes. [Task 4] A target appears on either the top or the bottom of the screen. The subject imagines opening and closing either both fists (if the target is on top) or both feet (if the target is on the bottom) until the target disappears. Then the subject relaxes.
In summary, the experimental runs were:
View full README
DOI ##Acknowledgements
Subjects performed different motor/imagery tasks while 64-channel EEG were recorded using the BCI2000 system (http://www.bci2000.org). Each subject performed 14 experimental runs: two one-minute baseline runs (one with eyes open, one with eyes closed), and three two-minute runs of each of the four following tasks: [Task 1] A target appears on either the left or the right side of the screen. The subject opens and closes the corresponding fist until the target disappears. Then the subject relaxes. [Task 2] A target appears on either the left or the right side of the screen. The subject imagines opening and closing the corresponding fist until the target disappears. Then the subject relaxes. [Task 3] A target appears on either the top or the bottom of the screen. The subject opens and closes either both fists (if the target is on top) or both feet (if the target is on the bottom) until the target disappears. Then the subject relaxes. [Task 4] A target appears on either the top or the bottom of the screen. The subject imagines opening and closing either both fists (if the target is on top) or both feet (if the target is on the bottom) until the target disappears. Then the subject relaxes.
- In summary, the experimental runs were:
Baseline, eyes open
Baseline, eyes closed
Task 1 (open and close left or right fist)
Task 2 (imagine opening and closing left or right fist)
Task 3 (open and close both fists or both feet)
Task 4 (imagine opening and closing both fists or both feet)
Task 1
Task 2
Task 3
Task 4
Task 1
Task 2
Task 3
Task 4
Each event code includes an event type indicator (T0, T1, or T2) that is concatenated to the Task # it belongs with (i.e TASK1T2). The event type indicators change definition depending on the Task # it is associated with. For example, TASK1T2 would correspond to the onset of real motion in the right fist, while TASK3T2 would correspond to onset of real motion in both feet: [T0] corresponds to rest [T1] corresponds to onset of motion (real or imagined) of: - the left fist (in runs 3, 4, 7, 8, 11, and 12; for Task 1 (real) and Task 2 (imagined)) - both fists (in runs 5, 6, 9, 10, 13, and 14; for Task 3 (real) and Task 4 (imagined))
[T2] corresponds to onset of motion (real or imagined) of: - the right fist (in runs 3, 4, 7, 8, 11, and 12; Task 1 (real) and Task 2 (imagined)) - both feet (in runs 5, 6, 9, 10, 13, and 14; for Task 3 (real) and Task 4 (imagined))
Note: The data files in this dataset were converted into the .set format for EEGLAB. The event codes in the .set files of this dataset will contain the concatenated event codes above for all event files for clarity purposes. The non-converted .edf files along with the accompanying PhysioBank-compatible annotation files for all the runs of each subject can be found in the sourcedata folder. In the non-converted .edf files the event codes will only be shown as T0, T1, and T2 regardless of task type. All the Matlab scripts used for the .set conversion and renaming of event codes of the PhysioBank .edf files can be found in the code folder.
Montage
The EEGs were recorded from 64 electrodes as per the international 10-10 system (excluding electrodes Nz, F9, F10, FT9, FT10, A1, A2, TP9, TP10, P9, and P10), as shown in the figure in the code folder. The numbers below each electrode name indicate the order in which they appear in the records; note that signals in the records are numbered from 0 to 63, while the numbers in the figure range from 1 to 64.
Cohort#
Dataset Statistics#
Age distribution (n=95, range 19–67 yr, mean 38.8 yr · sex per subject not reported)
Sex composition
Channel counts: 64 ch (n=1526 recordings)
Sampling frequencies (Hz)
Total recording duration: 48 h
Signal · Electrodes & live trace#
Live trace viewer — sub-001 · task-motion · run-10
Showing one representative recording out of
109 subjects and 1526 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 Motor Movement/Imagery Dataset |
Author (year) |
— |
Canonical |
— |
Importable as |
|
Year |
— |
Authors |
Gerwin Schalk, Dennis J McFarland, Thilo Hinterberger, Niels Birbaumer, Jonathan R Wolpaw |
License |
CC0 |
Citation / DOI |
|
Source links |
OpenNeuro | NeMAR | Source URL |
Copy-paste BibTeX
@dataset{on004362,
title = {EEG Motor Movement/Imagery Dataset},
author = {Gerwin Schalk and Dennis J McFarland and Thilo Hinterberger and Niels Birbaumer and Jonathan R Wolpaw},
doi = {10.82901/nemar.on004362},
url = {https://doi.org/10.82901/nemar.on004362},
}
API Reference#
eegdash.datasetEEGDashDataset- class eegdash.dataset.ON004362(cache_dir: str, query: dict | None = None, s3_bucket: str | None = None, **kwargs)[source]#
EEG Motor Movement/Imagery Dataset
- Study:
on004362(NeMAR)- Author (year):
nan- Canonical:
—
Also importable as:
ON004362,nan.Modality:
eeg. Subjects: 109; recordings: 1526; 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/on004362 NeMAR dataset: https://nemar.org/dataexplorer/detail?dataset_id=on004362 DOI: https://doi.org/10.82901/nemar.on004362
Examples
>>> from eegdash.dataset import ON004362 >>> dataset = ON004362(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.pytorchSwap any load_dataset(...) call for on004362 to reproduce the tutorial on this dataset.
Citation
Gerwin Schalk, Dennis J McFarland, Thilo Hinterberger, Niels Birbaumer, Jonathan R Wolpaw (n.d.). EEG Motor Movement/Imagery Dataset. 10.82901/nemar.on004362
Provenance
¹Contributed to nemar in BIDS format.
²Curated & ingested by the EEGDash catalog; see CITATION.cff for canonical reference.
³Persistent identifier: 10.82901/nemar.on004362.
See Also#
eegdash.dataset.EEGDashDataseteegdash.dataset