class moabb.datasets.Sosulski2019(use_soas_as_sessions=True, load_soa_60=False, reject_non_iid=False, interval=None)[source][source]

P300 dataset from initial spot study.

Dataset [1], study on spatial transfer between SOAs [2], actual paradigm / online optimization [3].

Dataset Description

This dataset contains multiple small trials of an auditory oddball paradigm. The paradigm presented two different sinusoidal tones. A low-pitched (500 Hz, 40 ms duration) non-target tone and a high-pitched (1000 Hz, 40 ms duration) target tone. Subjects were instructed to attend to the high-pitched target tones and ignore the low-pitched tones.

One trial (= one file) consisted of 90 tones, 15 targets and 75 non-targets. The order was pseudo-randomized in a way that at least two non-target tones occur between two target tones. Additionally, if you split the 90 tones of one trial into consecutive sets of six tones, there will always be exactly one target and five non-target tones in each set.

In the first part of the experiment (run 1), each subject performed 50-70 trials with various different stimulus onset asynchronies (SOAs) – i.e. the time between the onset of successive tones – for each trial. In the second part (run 2), 4-5 SOAs were played, with blocks of 5 trials having the same SOA. All SOAs were in the range of 60 ms to 600 ms. Regardless of the experiment part, after a set of five trials, subjects were given the opportunity to take a short break to e.g. drink etc.

Finally, before and after each run, resting data was recorded. One minute with eyes open and one minute with eyes closed, i.e. in total four minutes of resting data are available for each subject.

Data was recorded using a BrainAmp DC (BrainVision) amplifier and a 31 passive electrode EasyCap. The cap was placed according to the extended 10-20 electrode layout. The reference electrode was placed on the nose. Before recording, the cap was prepared such that impedances on all electrodes were around 20 kOhm. The EEG signal was recorded at 1000 Hz.

The data contains 31 scalp channels, one EOG channel and five miscellaneous non-EEG signal channels. However, only scalp EEG and the EOG channel is available in all subjects. The markers in the marker file indicate the onset of target tones (21) and non-target tones (1).

WARNING: Note that this wrapper currently only loads the second part of the experiment and uses pseudo-sessions to achieve the functionality to handle different conditions in MOABB. As a result, the statistical testing features of MOABB cannot be used for this dataset.



Sosulski, J., Tangermann, M.: Electroencephalogram signals recorded from 13 healthy subjects during an

auditory oddball paradigm under different stimulus onset asynchrony conditions. Dataset. DOI: 10.6094/UNIFR/154576 .. [Rc783cf247497-2] Sosulski, J., Tangermann, M.: Spatial filters for auditory evoked potentials transfer between different experimental conditions. Graz BCI Conference. 2019. .. [Rc783cf247497-3] Sosulski, J., Hübner, D., Klein, A., Tangermann, M.: Online Optimization of Stimulation Speed in an Auditory Brain-Computer Interface under Time Constraints. arXiv preprint. 2021.

New in version 0.4.5.


data_path(subject[, path, force_update, …])

Get path to local copy of a subject data.

download([subject_list, path, force_update, …])

Download all data from the dataset.


Return the data correspoonding to a list of subjects.


data_path(subject, path=None, force_update=False, update_path=None, verbose=None)[source][source]

Get path to local copy of a subject data.

  • subject (int) – Number of subject to use

  • path (None | str) – Location of where to look for the data storing location. If None, the environment variable or config parameter MNE_DATASETS_(dataset)_PATH is used. If it doesn’t exist, the “~/mne_data” directory is used. If the dataset is not found under the given path, the data will be automatically downloaded to the specified folder.

  • force_update (bool) – Force update of the dataset even if a local copy exists.

  • update_path (bool | None **Deprecated**) – If True, set the MNE_DATASETS_(dataset)_PATH in mne-python config to the given path. If None, the user is prompted.

  • verbose (bool, str, int, or None) – If not None, override default verbose level (see mne.verbose()).


path – Local path to the given data file. This path is contained inside a list of length one, for compatibility.

Return type

list of str