autoreject.Ransac#

class autoreject.Ransac(n_resample=50, min_channels=0.25, min_corr=0.75, unbroken_time=0.4, n_jobs=1, random_state=435656, picks=None, verbose=True)[source]#

Bases: object

RANSAC algorithm to find bad sensors and repair them.

Implements RAndom SAmple Consensus (RANSAC) method to detect bad sensors.

Parameters:
n_resampleint

Number of times the sensors are resampled.

min_channelsfloat

Fraction of sensors for robust reconstruction.

min_corrfloat

Cut-off correlation for abnormal wrt neighbours.

unbroken_timefloat

Cut-off fraction of time sensor can have poor RANSAC predictability.

n_jobsint

Number of parallel jobs.

random_stateint | np.random.RandomState | None

The seed of the pseudo random number generator to use. Defaults to 435656.

picksstr | list | slice | None

Channels to include. Slices and lists of integers will be interpreted as channel indices. In lists, channel name strings (e.g., ['MEG0111', 'MEG2623']) will pick the given channels. None (default) will pick data channels {‘meg’, ‘eeg’}. Note that channels in info['bads'] will be included if their names or indices are explicitly provided.

verbosebool

The verbosity of progress messages. If False, suppress all output messages.

Notes

The window_size is automatically set to the epoch length.

References

[1] Bigdely-Shamlo, Nima, et al.

“The PREP pipeline: standardized preprocessing for large-scale EEG analysis.” Frontiers in neuroinformatics 9 (2015).

[2] Mainak Jas, Denis Engemann, Yousra Bekhti, Federico Raimondo, and

Alexandre Gramfort, “Autoreject: Automated artifact rejection for MEG and EEG.” arXiv preprint arXiv:1612.08194, 2016.

fit(epochs)[source]#

Perform RANSAC on the given epochs.

Steps:

  1. Interpolate all channels from a subset of channels (fraction denoted as min_channels), repeat n_resample times.

  2. See if correlation of interpolated channels to original channel is above 75% per epoch (min_corr)

  3. If more than unbroken_time fraction of epochs have a lower correlation than that, add channel to self.bad_chs_

Parameters:
epochsmne.Epochs

An Epochs object with data to perform RANSAC on

Returns:
selfRansac

The updated instance with the list of bad channels accessible by self.bad_chs_

Examples using autoreject.Ransac#

Detect bad sensors using RANSAC

Detect bad sensors using RANSAC