Identify Noisy Epochs¶
The noisy_epochs step identifies and marks EEG epochs as noisy based on
whether their per-channel signal standard deviation is consistently an outlier
relative to other epochs.
This step operates in two stages:
For each epoch, channels whose standard deviation is identified as an outlier are flagged.
An epoch is marked as noisy if it more than
flag_critproportion of channels were flagged for this epoch.
Examples¶
noisy_epochs:
flag_crit: 0.2
outlier_method: quantile
outliers_kwargs:
k: 6
lower: 0.25
upper: 0.75
Parameters¶
flag_critfloat, default=0.2Proportion of channels that must be flagged as outliers in an epoch for the epoch to be marked as noisy.
outlier_methodstr, default=’quantile’Method used to identify outlier epochs. Options are
'quantile','trimmed', or'fixed'.'quantile'Identifies outliers using asymmetric, quantile-based thresholds. For a given epoch, channels are flagged if their standard deviation lies outside
μ - k * (μ - q_low)orμ + k * (q_high - μ)where
μis the mean standard deviation across channels,q_lowandq_highare the lower or upper quantile specified byoutliers_kwargs['lower']andoutliers_kwargs['upper'], andkis a scaling factor.This method is robust to skewed distributions and is suitable when channel variability is not symmetrically distributed.
'trimmed'Identifies outliers using robust statistics by computing the trimmed mean and trimmed standard deviation across channels. For a given epoch, channels with standard deviation values outside
trimmed_mean ± k * trimmed_stdare flagged as noisy.
This method reduces the influence of extreme artifacts while preserving sensitivity to moderately noisy channels.
'fixed'Identifies outliers using fixed, absolute thresholds. For a given epoch, channels with standard deviation values outside the thresholds (in volts) specified by
outliers_kwargs['lower']andoutliers_kwargs['upper']are flagged.
outliers_kwargsdictAdditional keyword arguments specific to the chosen outlier detection method.
- For
'quantile': kfloat, default=6Scaling factor for the quantile-based thresholds.
lowerfloat, default=0.25Lower quantile.
upperfloat, default=0.75Upper quantile.
- For
- For
'trimmed': kfloat, default=3Scaling factor for trimmed standard deviation thresholds.
- For
Notes¶
The trimmed and fixed methods are not robustly tested in the current codebase.
Please use with caution and validate results carefully.