referencing.rereference_data#

autoclean.functions.preprocessing.referencing.rereference_data(data, ref_channels='average', projection=False, ch_type='auto', forward=None, verbose=None)[source]#

Apply referencing scheme to EEG data.

This function applies various referencing schemes to continuous (Raw) or epoched EEG data. Referencing is a crucial preprocessing step that determines the voltage reference point for all EEG measurements, significantly affecting signal interpretation and analysis results.

The function supports common referencing schemes including average reference, single-channel reference, multi-channel reference, and REST (Reference Electrode Standardization Technique) when appropriate forward model is provided.

Parameters:
datamne.io.BaseRaw or mne.Epochs

The EEG data to rereference. Can be any MNE Raw object (e.g., RawFIF, RawEEGLAB, etc.) or Epochs object.

ref_channelsstr or list of str, default ‘average’

Reference channel(s) to use. Options: - ‘average’: Compute average reference across all EEG channels - ‘REST’: Apply Reference Electrode Standardization Technique (requires forward model) - str: Name of single channel to use as reference (e.g., ‘Cz’, ‘TP9’) - list of str: Names of multiple channels to average for reference - []: Empty list creates an artificial reference channel

projectionbool, default False

Whether to apply referencing as a projection. If True, referencing is applied as a reversible projection operator. If False, data is modified directly (recommended for most use cases).

ch_typestr, default ‘auto’

Channel type to apply referencing to. ‘auto’ automatically selects EEG channels. Can also specify ‘eeg’, ‘ecog’, ‘seeg’, or ‘dbs’.

forwardmne.Forward or None, default None

Forward model for REST referencing. Required only when ref_channels=’REST’. Should be computed for the same electrode montage as the data.

verbosebool or None, default None

Control verbosity of output. If None, uses MNE default.

Returns:
rereferenced_datamne.io.BaseRaw or mne.Epochs

The rereferenced data object, same type as input. Contains identical structure and metadata but with modified voltage references.

See also

mne.io.Raw.set_eeg_reference

MNE’s raw data referencing method

mne.Epochs.set_eeg_reference

MNE’s epochs referencing method

mne.set_eeg_reference

General referencing function

mne.make_forward_solution

For creating forward models for REST

Notes

Common referencing schemes: average reference, single channel, linked mastoids, or REST.

Examples

>>> avg_ref_data = rereference_data(raw, ref_channels='average')
>>> mastoid_ref_data = rereference_data(raw, ref_channels='TP9')
>>> rest_ref_data = rereference_data(raw, ref_channels='REST', forward=forward_model)