[Eeglablist] Ghost ICs on EEG data

Makoto Miyakoshi mmiyakoshi at ucsd.edu
Fri May 15 10:23:21 PDT 2020


Dear Maitane,

> These ghost ICs appear in first two positions of the ICs and
exhibit inverted time-course and activation maps.

Looks like that's indeed the case of 'Ghost ICs' described here.
https://sccn.ucsd.edu/wiki/Makoto's_preprocessing_pipeline#What_is_rank.3F_.28Updated_06.2F06.2F2016.29


> This seems to be a problem of low-rank data before ICA.

Yes I agree. I recommend you explicitly check data rank by using
Maltab function rank().
Note that smallest eigenvalue less than 10^-8 (or something like that) is
used somewhere in EEGLAB to round to be 'practically zero'. You may
consider this into account.

Even if you don't reject any electrodes, your data could be rand
deficient due to bridging between electrodes, recording mistake, including
initial reference (which is zeros) but average-referenced so that you
visually can't identify it, etc.

Makoto



On Fri, May 15, 2020 at 12:26 AM Maitane Barrenetxea Carrasco <
mbarrenetxea at mondragon.edu> wrote:

> Hi all,
>
> I am working on a dataset that has 128 EEG channels and 4 EOG channels (2
> vertical + 2 horizontal) plus a nose-tip reference. Hence, 133 channels in
> total.
> After ICA decomposition I have noticed that there are 2 ghost ICs in one
> the datasets (the 13 files that I have preprocessed before were apparently
> fine). These ghost ICs appear in first two positions of the ICs and exhibit
> inverted time-course and activation maps.
>
> This seems to be a problem of low-rank data before ICA. The thing is that
> in this case my data is full rank when entering ICA (128 channels and rank
> 128 as this subject doesn't have any interpolated channels). Additionally,
> I am only computing 92 components (I use PCA for dimensionality reduction)
> as the EEG data length doesn't allow for the calculation of at least 30
> data points per ICA weight if all 128 components are to be estimated (data
> length=254458, 30*92^2=253920).
>
> So, is this a matter of runica() instability or is there something wrong in
> my pipeline? Here is the code I use to preprocess the EEG data:
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %% STEP 2: Filtering  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> ...
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %% STEP 3: Remove initial and final segments of the data
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>     ....
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %% STEP 4: Import channel info
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> if  there are bad channels then
>         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>         %% STEP 5: Reject bad channels
>         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
>         EEG = pop_select(EEG,'nochannel',toremove);
>
>         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>         %% STEP 6 : Interpolate
>         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>         EEG = pop_interp(EEG, originalEEG.chanlocs, 'spherical');
> end
>
>     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>     %% STEP 7: Average re-reference --> exclude EOG channels to avoid
> artifact propagation
>     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>     EEG = pop_reref( EEG, [],'exclude',[129:132] );
>
>     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>     %% STEP 8: ICA --> EOG and reference channel excluded
>     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
>     EEG = pop_runica(EEG, 'pca', 92,
> 'extended',1,'interupt','on','chanind',[1:128]);
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> Thank you very much in advance,
>
> Maitane
>
> --
> Maitane Barrenechea Carrasco (PhD)
> Biomedikoa - BIO
> Mondragon Unibertsitateko Goi Eskola Politeknikoa
> Loramendi, 4; 20500 Arrasate - Mondragón (Gipuzkoa)
> Tel. : +(34) 647504294 / +(34) 943794700 + Ext. 8162
>
> https://urldefense.com/v3/__http://www.mondragon.edu__;!!Mih3wA!ULzoRJq4QVX4tD2cn-imhLSZRrdTWUjwCJNE0QGEDDphbevgTlbKbGve0CJ3aGjeOsRUiQ$
> _______________________________________________
> 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