mne.datasets.eegbci.load_data(subject, runs, path=None, force_update=False, update_path=None, base_url='', verbose=None)[source]#

Get paths to local copies of EEGBCI dataset files.

This will fetch data for the EEGBCI dataset [1], which is also available at PhysioNet [2].


The subject to use. Can be in the range of 1-109 (inclusive).

runsint | list of int

The runs to use (see Notes for details).

pathNone | path-like

Location of where to look for the EEGBCI data. If None, the environment variable or config parameter MNE_DATASETS_EEGBCI_PATH is used. If neither exists, the ~/mne_data directory is used. If the EEGBCI dataset is not found under the given path, the data will be automatically downloaded to the specified folder.


Force update of the dataset even if a local copy exists.

update_pathbool | None

If True, set MNE_DATASETS_EEGBCI_PATH in the configuration to the given path. If None, the user is prompted.


The URL root for the data.

verbosebool | str | int | None

Control verbosity of the logging output. If None, use the default verbosity level. See the logging documentation and mne.verbose() for details. Should only be passed as a keyword argument.


List of local data paths of the given type.


The run numbers correspond to:




Baseline, eyes open


Baseline, eyes closed

3, 7, 11

Motor execution: left vs right hand

4, 8, 12

Motor imagery: left vs right hand

5, 9, 13

Motor execution: hands vs feet

6, 10, 14

Motor imagery: hands vs feet

For example, one could do:

>>> from mne.datasets import eegbci
>>> eegbci.load_data(1, [6, 10, 14], "~/datasets") 

This would download runs 6, 10, and 14 (hand/foot motor imagery) runs from subject 1 in the EEGBCI dataset to “~/datasets” and prompt the user to store this path in the config (if it does not already exist).