blog post on MNE by Clemens Brunner

hi,

let me share here a nice blog post by Clemens Brunner
using MNE-Python to clean up EOG by linear regression:

https://cbrnr.github.io/2017/10/20/removing-eog-regression/

thanks Clemens

Alex
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20171022/558b585f/attachment.html

wooo, that's great!

We already chatted a bit on twitter. I'd like to see an example or a simple
API for this in MNE. Marjin has worked on this apparently in mne-sandbox.

If you use samples around each blink event to construct an SSP projector that is orthogonal to the leading eigenvector of the blink covariance, then the SSP is equivalent to performing a linear-regression based subtraction (with the PCA-component corresponding to the blink as the regressor). As you increase the number of blink events used to compute the blink covariance and the blink projector, the SSP will converge to some set of coefficients. In the same way, as you have longer and longer traces, the linear regression (whether you use the EOG or the PCA component corresponding to the blink) will converge to essentially the same set of coefficients.

So there any reason to think this will be different from SSP?

Thanks,

Hari

Yes and no. SSP zeros out an entire component. Regression subtracts the signal recorded at the EOG channels from en EEG.

The two are probably equivalent if the projector is computed using both the EOG and EEG simultaneously at all times. However, by default, MNE doesn't do this.

The difference is best demonstrated on a dataset with only one EEG channel and one EOG channel. In this set, SSP using only the EEG channel doesn't make any sense, it would zero out the only component there is. However, regressing the EOG onto the EEG channel and subtracting it leaves a cleaned EEG channel as residual of the regression.