NM000433: ieeg dataset, 1 subjects#
Dareplane proof of concept: STN LFP, ECoG and EOG during the CopyDraw task with open- and closed-loop DBS (1 Parkinson’s disease patient)
Access recordings and metadata through EEGDash.
Citation: Matthias Dold, Joana Pereira, Bastian Sajonz, Volker A. Coenen, Jordy Thielen, Marcus L.F. Janssen, Michael Tangermann (2024). Dareplane proof of concept: STN LFP, ECoG and EOG during the CopyDraw task with open- and closed-loop DBS (1 Parkinson’s disease patient). 10.82901/nemar.nm000433
Modality: ieeg Subjects: 1 Recordings: 82 License: CC-BY-4.0 Source: nemar
Metadata: Complete (100%)
1-participant iEEG dataset — Dareplane proof of concept: STN LFP, ECoG and EOG during the CopyDraw task with open- and closed-loop DBS (1 Parkinson's disease patient).
Quickstart#
Install
pip install eegdash
Access the data
from eegdash.dataset import NM000433
dataset = NM000433(cache_dir="./data")
# Get the raw object of the first recording
raw = dataset.datasets[0].raw
print(raw.info)
Filter by subject
dataset = NM000433(cache_dir="./data", subject="01")
Advanced query
dataset = NM000433(
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{nm000433,
title = {Dareplane proof of concept: STN LFP, ECoG and EOG during the CopyDraw task with open- and closed-loop DBS (1 Parkinson's disease patient)},
author = {Matthias Dold and Joana Pereira and Bastian Sajonz and Volker A. Coenen and Jordy Thielen and Marcus L.F. Janssen and Michael Tangermann},
doi = {10.82901/nemar.nm000433},
url = {https://doi.org/10.82901/nemar.nm000433},
}
About This Dataset#
Intracranial recordings from one patient with Parkinson’s disease (67 years, female, right-handed; “PD4” in the paper) with
externalised bilateral subthalamic DBS leads and an epidural ECoG strip over the left primary motor cortex, recorded on days 2, 3 and 4 after implantation at the Medical Center - University of Freiburg while she performed the CopyDraw task with DBS OFF, with continuous open-loop DBS ON and (day 4) with closed-loop adaptive DBS run on the Dareplane platform.
Source: Dold, M., Pereira, J., Sajonz, B., Coenen, V.A., Thielen, J., Janssen, M.L.F., Tangermann, M. (2024). “LFP and ECoG
data during CopyDraw task with deep brain stimulation - Dareplane data for proof of concept paper”. Version 1. Radboud University. https://doi.org/10.34973/d214-m342 (CC BY 4.0). Paper: Dold et al., “Dareplane: A modular open-source software platform for BCI research with application in closed-loop deep brain stimulation”, arXiv:2408.01242 (J. Neural Eng.).
Dareplane proof of concept: STN LFP, ECoG and EOG during CopyDraw with open- and closed-loop DBS
Please acknowledge: “Data were provided (in part) by the Radboud University, Nijmegen, The Netherlands”.
Contents
sub-P001(release label), sessionsses-day2,ses-day3,ses-day4(days after implantation).41 recordings, 2.72 h at 22 kHz. One recording = one Neuro Omega .mat file of the release; runs are numbered in
View full README
Dareplane proof of concept: STN LFP, ECoG and EOG during CopyDraw with open- and closed-loop DBS
Please acknowledge: “Data were provided (in part) by the Radboud University, Nijmegen, The Netherlands”.
Contents
sub-P001(release label), sessionsses-day2,ses-day3,ses-day4(days after implantation).41 recordings, 2.72 h at 22 kHz. One recording = one Neuro Omega .mat file of the release; runs are numbered in recording order (Neuro Omega clock) within a session.
acq-stimoff/acq-stimon/acq-closedloopfollow the file names (copydraw_off,copydraw_on,clcopydraw_on).scans.tsvgives the source file, block number and file part for every run. Several blocks were saved in more than one file (e.g. block1 parts 0001-0004 on day 2), some only a few seconds long; they are kept as separate runs, unchanged.24 channels per recording, names from the release README CHANNEL_MAP: -
LFP_1-LFP_8: Boston Scientific Vercise directional lead in the left STN (LFP_1tip, most ventral;LFP_8most dorsal); -LFP_9-LFP_16: same for the right STN (LFP_9tip); -ECOG_1-ECOG_4: 4-contact Ad-Tech strip, epidural over left M1 (ECOG_1most caudal,ECOG_4most rostral); -EOG_1above the right eyebrow,EOG_2below the right eye,EOG_3left of the left eye,EOG_4right of the right eye. Type DBS / ECOG / EOG. The README does not say which of contacts 2-7 are the directional segments.Values: the Neuro Omega int16 counts are stored unchanged (BrainVision INT_16); the header resolution is BitResolution/Gain = 38.14697265625/55 = 0.6935813210 uV per count (Neuro Omega convention). Note that the authors’ load_xdf.py treats the raw counts directly as microvolts (no gain); multiply by 55/38.14697265625 to reproduce that. LFP channels saturate (int16 limits) during stimulation; counts per channel are in code/conversion_report.json.
Reference and ground (paper): ECoG referenced to the left earlobe, DBS recordings to the left mastoid, ground on the right mastoid. Hardware filter settings are not stated (n/a).
Auxiliary Neuro Omega analog inputs (CANALOG_IN_1-8, CADD_ANALOG_IN_1-8, 2.75 kHz) are written as separate
acq-<condition>analogfiles (MISC, raw counts, unit not documented) only where they are not constant (41 recordings).No coordinates are released. electrodes.tsv lists the 16 DBS and 4 ECoG contacts with x, y, z = n/a and the stated target (STN / left M1, hemisphere).
Events
events.tsv holds two kinds of markers stored in the .mat files, aligned as in the authors’ load_xdf.py
(onset = marker time on the 44 kHz Neuro Omega clock - TimeBegin of the 22 kHz channels):
- port_marker: non-zero values of the Neuro Omega hardware port CPORT__1 (zeros reset the port). The values are given as
recorded. They do not always equal the CopyDraw codes (README: 10-21 start of copy-drawing trace k, 110-121 end, 50 self-paced readiness): on day 3 the port only shows value 1 and on days 2 and 4 only part of the code range appears.
stim_marker_<k>: the Neuro Omega stimulation marker channel CStimMarker_<k> (README: arrival times of the stimulation pulses);valueis the identifier stored with the marker.
The full CopyDraw marker stream (CopyDrawParadigmMarkerStream), the LSL copy of the signals (AODataStream), the closed-loop control streams and the mouse/keyboard streams are in the XDF files in sourcedata, on the LSL clock. The release does not document an alignment between the LSL clock and the .mat sample clock other than the port markers, so the XDF markers are not copied into events.tsv.
sourcedata/radboud-d214-m342
The release files of the patient (README.md, ABOUT.txt, LICENSE.txt, MANIFEST.txt, analysis_scripts/load_xdf.py and data/sub-P001_ses-day*/{ao,bv,lsl,behavioral}): Neuro Omega .mat exports, BrainAmp ExG BrainVision files (heart rate, respiration, GSR; days 2-3), LSL XDF files and the CopyDraw behavioural YAML files (stylus traces per trial, block settings, projection results). All SHA-256 sums matched MANIFEST.txt on download. Files changed for privacy are listed in PRIVACY_CHANGES.tsv with their new SHA-256 (all other files are byte-identical to the release).
Not included: the benchtop tests (AO_test, Arduino_test, CT_* XDF/pickles), the c-VEP scalp-EEG speller data of three healthy participants (data/data_p00*), and intermediate analysis results (data/*.hdf, *.npy, *.joblib). Get them from the Radboud record.
Privacy
No names or hospital identifiers were found. Dates were reduced to year and month (day set to 01, same byte length): the export date in the .mat text headers and date strings in the XDF headers/marker strings and text files (see PRIVACY_CHANGES.tsv). The BrainVision marker files already carry the placeholder date 1900-01-01. Age, sex and handedness are those published in the paper.
NEMAR Metadata#
[](https://doi.org/10.82901/nemar.nm000433) # Dareplane proof of concept: STN LFP, ECoG and EOG during CopyDraw with open- and closed-loop DBS Intracranial recordings from one patient with Parkinson’s disease (67 years, female, right-handed; “PD4” in the paper) with externalised bilateral subthalamic DBS leads and an epidural ECoG strip over the left primary motor cortex, recorded on days 2, 3 and 4 after implantation at the Medical Center - University of Freiburg while she performed the CopyDraw task with DBS OFF, with continuous open-loop DBS ON and (day 4) with closed-loop adaptive DBS run on the Dareplane platform. Source: Dold, M., Pereira, J., Sajonz, B., Coenen, V.A., Thielen, J., Janssen, M.L.F., Tangermann, M. (2024). “LFP and ECoG data during CopyDraw task with deep brain stimulation - Dareplane data for proof of concept paper”. Version 1. Radboud University. https://doi.org/10.34973/d214-m342 (CC BY 4.0). Paper: Dold et al., “Dareplane: A modular open-source software platform for BCI research with application in closed-loop deep brain stimulation”, arXiv:2408.01242 (J. Neural Eng.). Please acknowledge: “Data were provided (in part) by the Radboud University, Nijmegen, The Netherlands”. ## Contents - sub-P001 (release label), sessions ses-day2, ses-day3, ses-day4 (days after implantation). - 41 recordings, 2.72 h at 22 kHz. One recording = one Neuro Omega .mat file of the release; runs are numbered in
recording order (Neuro Omega clock) within a session. acq-stimoff / acq-stimon / acq-closedloop follow the file names (copydraw_off, copydraw_on, clcopydraw_on). scans.tsv gives the source file, block number and file part for every run. Several blocks were saved in more than one file (e.g. block1 parts 0001-0004 on day 2), some only a few seconds long; they are kept as separate runs, unchanged.
24 channels per recording, names from the release README CHANNEL_MAP: - LFP_1-LFP_8: Boston Scientific Vercise directional lead in the left STN (LFP_1 tip, most ventral; LFP_8 most dorsal); - LFP_9-LFP_16: same for the right STN (LFP_9 tip); - ECOG_1-ECOG_4: 4-contact Ad-Tech strip, epidural over left M1 (ECOG_1 most caudal, ECOG_4 most rostral); - EOG_1 above the right eyebrow, EOG_2 below the right eye, EOG_3 left of the left eye, EOG_4 right of the right eye. Type DBS / ECOG / EOG. The README does not say which of contacts 2-7 are the directional segments.
Values: the Neuro Omega int16 counts are stored unchanged (BrainVision INT_16); the header resolution is BitResolution/Gain = 38.14697265625/55 = 0.6935813210 uV per count (Neuro Omega convention). Note that the authors’ load_xdf.py treats the raw counts directly as microvolts (no gain); multiply by 55/38.14697265625 to reproduce that. LFP channels saturate (int16 limits) during stimulation; counts per channel are in code/conversion_report.json.
Reference and ground (paper): ECoG referenced to the left earlobe, DBS recordings to the left mastoid, ground on the right mastoid. Hardware filter settings are not stated (n/a).
Auxiliary Neuro Omega analog inputs (CANALOG_IN_1-8, CADD_ANALOG_IN_1-8, 2.75 kHz) are written as separate acq-<condition>analog files (MISC, raw counts, unit not documented) only where they are not constant (41 recordings).
No coordinates are released. electrodes.tsv lists the 16 DBS and 4 ECoG contacts with x, y, z = n/a and the stated target (STN / left M1, hemisphere).
## Events events.tsv holds two kinds of markers stored in the .mat files, aligned as in the authors’ load_xdf.py (onset = marker time on the 44 kHz Neuro Omega clock - TimeBegin of the 22 kHz channels): - port_marker: non-zero values of the Neuro Omega hardware port CPORT__1 (zeros reset the port). The values are given as
recorded. They do not always equal the CopyDraw codes (README: 10-21 start of copy-drawing trace k, 110-121 end, 50 self-paced readiness): on day 3 the port only shows value 1 and on days 2 and 4 only part of the code range appears.
stim_marker_<k>: the Neuro Omega stimulation marker channel CStimMarker_<k> (README: arrival times of the stimulation pulses); value is the identifier stored with the marker.
The full CopyDraw marker stream (CopyDrawParadigmMarkerStream), the LSL copy of the signals (AODataStream), the closed-loop control streams and the mouse/keyboard streams are in the XDF files in sourcedata, on the LSL clock. The release does not document an alignment between the LSL clock and the .mat sample clock other than the port markers, so the XDF markers are not copied into events.tsv. ## sourcedata/radboud-d214-m342 The release files of the patient (README.md, ABOUT.txt, LICENSE.txt, MANIFEST.txt, analysis_scripts/load_xdf.py and data/sub-P001_ses-day*/{ao,bv,lsl,behavioral}): Neuro Omega .mat exports, BrainAmp ExG BrainVision files (heart rate, respiration, GSR; days 2-3), LSL XDF files and the CopyDraw behavioural YAML files (stylus traces per trial, block settings, projection results). All SHA-256 sums matched MANIFEST.txt on download. Files changed for privacy are listed in PRIVACY_CHANGES.tsv with their new SHA-256 (all other files are byte-identical to the release). Not included: the benchtop tests (AO_test, Arduino_test, CT_* XDF/pickles), the c-VEP scalp-EEG speller data of three healthy participants (data/data_p00*), and intermediate analysis results (data/*.hdf, *.npy, *.joblib). Get them from the Radboud record. ## Privacy No names or hospital identifiers were found. Dates were reduced to year and month (day set to 01, same byte length): the export date in the .mat text headers and date strings in the XDF headers/marker strings and text files (see PRIVACY_CHANGES.tsv). The BrainVision marker files already carry the placeholder date 1900-01-01. Age, sex and handedness are those published in the paper.
License: CC-BY-4.0
Authors:
Matthias Dold
Joana Pereira
Bastian Sajonz
Volker A. Coenen
Jordy Thielen
… and 2 more
Versions:
Version |
DOI |
Released |
|---|---|---|
|
Cohort#
Dataset Statistics#
Age distribution by gender (n=1, range 67–67 yr, mean 67.0 yr)
Sex composition
Channel counts (ch)
Sampling frequencies (Hz)
Total recording duration: 5 h 26 min
Signal · Electrodes & live trace#
Live trace viewer — sub-P001 · ses-day3 · task-copydraw · run-03
Showing one representative recording out of
1 subjects and 82 recordings in this dataset.
Browse the full set on OpenNeuro;
drop any other _ieeg.{set,edf,bdf,vhdr} file onto the
viewer (or pass ?ieeg=<url>) to inspect it.
No scalp electrode layout is currently indexed for this dataset. Once the eegdash montage registry ingests it, the interactive viewer will appear here automatically.
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 |
Dareplane proof of concept: STN LFP, ECoG and EOG during the CopyDraw task with open- and closed-loop DBS (1 Parkinson’s disease patient) |
Author (year) |
— |
Canonical |
— |
Importable as |
|
Year |
2024 |
Authors |
Matthias Dold, Joana Pereira, Bastian Sajonz, Volker A. Coenen, Jordy Thielen, Marcus L.F. Janssen, Michael Tangermann |
License |
CC-BY-4.0 |
Citation / DOI |
|
Source links |
OpenNeuro | NeMAR | Source URL |
Copy-paste BibTeX
@dataset{nm000433,
title = {Dareplane proof of concept: STN LFP, ECoG and EOG during the CopyDraw task with open- and closed-loop DBS (1 Parkinson's disease patient)},
author = {Matthias Dold and Joana Pereira and Bastian Sajonz and Volker A. Coenen and Jordy Thielen and Marcus L.F. Janssen and Michael Tangermann},
doi = {10.82901/nemar.nm000433},
url = {https://doi.org/10.82901/nemar.nm000433},
}
API Reference#
eegdash.datasetEEGDashDataset- class eegdash.dataset.NM000433(cache_dir: str, query: dict | None = None, s3_bucket: str | None = None, **kwargs)[source]#
Dareplane proof of concept: STN LFP, ECoG and EOG during the CopyDraw task with open- and closed-loop DBS (1 Parkinson’s disease patient)
- Study:
nm000433(NeMAR)- Author (year):
—
- Canonical:
—
Also importable as:
NM000433.Modality:
ieeg; Subject type:Unknown. Subjects: 1; recordings: 82; 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/nm000433 NeMAR dataset: https://nemar.org/dataexplorer/detail?dataset_id=nm000433 DOI: https://doi.org/10.82901/nemar.nm000433
Examples
>>> from eegdash.dataset import NM000433 >>> dataset = NM000433(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 nm000433 to reproduce the tutorial on this dataset.
Citation
Matthias Dold, Joana Pereira, Bastian Sajonz, Volker A. Coenen, Jordy Thielen, … (2024). Dareplane proof of concept: STN LFP, ECoG and EOG during the CopyDraw task with open- and closed-loop DBS (1 Parkinson's disease patient). 10.82901/nemar.nm000433
Provenance
¹Contributed to nemar in BIDS format.
²Curated & ingested by the EEGDash catalog; see CITATION.cff for canonical reference.
³Persistent identifier: 10.82901/nemar.nm000433.
See Also#
eegdash.dataset.EEGDashDataseteegdash.dataset