[Eeglablist] Different methods to automatically remove faulty channels

Delorme, Arnaud adelorme at ucsd.edu
Thu Jul 9 17:07:33 PDT 2020


Dear Katia,

I agree with Makoto. Methods that rely on pairwise correlation of channels (such as the one implemented in clean_rawdata) seem superior (I have not seen a formal comparison though). Basically, any data channel that is poorly correlated with any other channel is probably an artifact.

Arno

> On Jul 9, 2020, at 11:37 AM, Makoto Miyakoshi <mmiyakoshi at ucsd.edu> wrote:
> 
> Dear Katia,
> 
> You found the hidden truth in the EEG data cleaning?
> Welcome to the club.
> 
> Regarding EEGLAB's old epoch rejection functions, their performance is ok.
> I recommend you apply
> 1. simple amplitude thresholding (+/- 1000 etc) to remove outliers.
> 2. After rejecting the epochs, improbability test again for the second
> rejection.
> so that your stat calculated is not affected by outliers.
> 
>> Which method should I trust?
> 
> If you make yourself comfortable with it, I still recommend clean_rawdata()
> with ASR on the continuous data.
> There are now many related publications.
> https://sccn.ucsd.edu/wiki/Artifact_Subspace_Reconstruction_(ASR)#Reference_.2807.2F09.2F2020_update.29
> 
> Also, just recently I found that the ASR algorithm seems basically the same
> as popular data imputation methods as as this one
> https://urldefense.com/v3/__https://www.researchgate.net/publication/320015038_Missing_Data_Imputation_Toolbox_for_MATLA__;!!Mih3wA!XQ2QKItWaeupyKuQ4G_kEyLhS3nWWjrVXAEd4U75tX-N0srsUtKOk7AHlLq2Kc5VidJ8Hg$ 
> 
> Makoto
> 
> On Thu, Jul 9, 2020 at 10:24 AM Katarzyna Dudzikowska <
> k.a.dudzikowska at gmail.com> wrote:
> 
>> Hi all,
>> 
>> I am preprocessing EEG datasets for the first time ever and trying to
>> figure out how to take care of any potential unsound channels. Just
>> scrolling through the data none of the channels really jump out as bad, but
>> that is probably down to my lack of expertise. So to get closer to some
>> level of understanding I ran and took notes on all the methods of automatic
>> rejection that I am aware of: using probability, kurtosis and spectrum as a
>> measure, as well as channel rejection encompassed in clean_raw_data
>> function.
>> It took me a good moment, but I am just as confused as I was before,
>> because there is no coherence whatsoever in the results of these four
>> methods.
>> There is some overlap between rejection based on Kurtosis and Probability
>> (though Probability measure usually suggests to reject only one or two
>> channels of several suggested through Kurtosis measure). Results of
>> Spectrum measure are usually null, sometimes one of the channels picked up
>> through other measures also gets labeled for rejection. The algorithm used
>> by clean_raw_data always comes up with multiple channels for rejection,
>> many more than any other method, but they virtually never overlap with
>> channels labelled by other methods.
>> 
>> In my naivete I kind of thought that there would be at least some
>> agreement: if a channel is in some way faulty wouldn't it at least
>> sometimes be captured by different methods? In a couple datasets I also
>> tried to run automatic channel rejection after doing some artifact
>> rejection with ASR and got completely different results to those from
>> before artifact rejection which confused me too. I am applying the
>> functions to continuous data, after downsampling (to 250 Hz), low pass
>> filtering at 0.5Hz and high pass filtering at 45Hz. The channel locations
>> are imported and right mastoid channel was added as a reference. Am I
>> missing something?
>> 
>> I am really curious why there is such a massive discrepancy between
>> different methods. On a more practical side could you give me some advice
>> on how to decide on the best method to choose (I have watched/read several
>> tutorials, but I am still really confused). Which method should I trust? My
>> end goal is to calculate frontal alpha asymmetry, in case that makes any
>> difference: is any of the methods more suitable for frequency analysis?
>> 
>> I would be really grateful for some advice.
>> 
>> All the best,
>> Katia
>> _______________________________________________
>> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
>> To unsubscribe, send an empty email to
>> eeglablist-unsubscribe at sccn.ucsd.edu
>> For digest mode, send an email with the subject "set digest mime" to
>> eeglablist-request at sccn.ucsd.edu
>> 
> _______________________________________________
> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
> To unsubscribe, send an empty email to eeglablist-unsubscribe at sccn.ucsd.edu
> For digest mode, send an email with the subject "set digest mime" to eeglablist-request at sccn.ucsd.edu




More information about the eeglablist mailing list