CBCIC

bciflow.datasets.cbcic.cbcic(subject: int = 1, session_list: List[str] | None = None, labels: List[str] = ['left-hand', 'right-hand'], path: str = 'data/cbcic/') Dict[str, Any][source]

Description

This function loads EEG data for a specific subject and session from the cbcic dataset. It processes the data to fit the structure of the eegdata dictionary, which is used for further processing and analysis.

The dataset can be found at:
param subject:

Index of the subject to retrieve the data from. Must be between 1 and 10. Default is 1.

type subject:

int, optional

param session_list:

List of session codes to load. Valid options are ‘T’ (training) and ‘E’ (evaluation). If None, all sessions are loaded. Default is None.

type session_list:

list, optional

param labels:

List of labels to include in the dataset. Valid options are ‘left-hand’ and ‘right-hand’. Default is [‘left-hand’, ‘right-hand’].

type labels:

list, optional

param path:

Path to the folder containing the dataset files. Default is ‘data/cbcic/’.

type path:

str, optional

returns:

A dictionary containing the following keys:

  • X: EEG data as a numpy array [trials, 1, channels, time].

  • y: Labels corresponding to the EEG data.

  • sfreq: Sampling frequency of the EEG data.

  • y_dict: Mapping of labels to integers.

  • events: Dictionary describing event markers.

  • ch_names: List of channel names.

  • tmin: Start time of the EEG data.

  • data_type: Type of the data (‘epochs’).

rtype:

dict

raises ValueError:

If any of the input parameters are invalid or if the specified file does not exist.

Examples

Load EEG data for subject 1, all sessions, and default labels:

>>> from bciflow.datasets import cbcic
>>> eeg_data = cbcic(subject=1)
>>> print(eeg_data['X'].shape)  # Shape of the EEG data
>>> print(eeg_data['y'])  # Labels