[Eeglablist] Regarding .fdt files

#HENG JIAMIN GLADYS# JHENG007 at e.ntu.edu.sg
Thu Feb 13 20:24:11 PST 2020


Dear Arnaud,

Thanks for the prompt reply and explanations, appreciate it. I have managed to change the file settings as you described.

Although, I still have some queries regarding average re-reference and ICA. As you mentioned: "If you compute average reference, then the rank of the data is being decreased by 1 (so 59 instead of 60). If you do not compute average reference, and the reference is not included in the list of channels, then the rank does not need to be decreased. Rank is a hard thing to calculate and there are sometimes numerical instabilities, hence the message you are seeing."

 - Could I clarify that computing average re-reference always result in n-1 components after ICA? If so, I have been obtaining n number of components as per channels (i.e. same no. of components as channels) in my pre-processing pipeline thus far. It is only recently that runica in eeglab notifies about generating n-1 components.

I also came across on Makoto's pipeline (https://sccn.ucsd.edu/wiki/Makoto's_preprocessing_pipeline) that: "When you apply average reference, you need to put the reference channel back if it is missing (which is usually the case). You can include the reference channel in computing average reference by selecting the 'Add current reference back to the data' option in the re-reference GUI. If you do not have initial reference channel location, in theory you should generate a zero-filled channel and concatenate it to your EEG data matrix as an extra channel (which makes the data rank-deficient) and perform average reference. To make the data full-ranked again, one may (a) drop a channel--choosing the reference channel is reasonable (b) reduce the dimensionality by using a PCA option for ICA."

I do not have initial reference channel, and have not been generating a zero-filled channel but I have been obtaining the same number of components as channels, up till recently where runica is resulting in n-1 components. Hence my confusion regarding what is the right expected outcome of ICA via runica.

P.S. Other details about my recording and setup: 64-channels, Ref and Ground are set in the acquisition system. Out of the 64-channels, 2 channels are EOG.

Thanks in advance,
Gladys
________________________________
From: eeglablist <eeglablist-bounces at sccn.ucsd.edu> on behalf of Delorme, Arnaud <adelorme at ucsd.edu>
Sent: Wednesday, February 12, 2020 8:44 PM
Cc: EEGLAB List <eeglablist at sccn.ucsd.edu>
Subject: Re: [Eeglablist] Regarding .fdt files

Dear Gladys,

> A couple of weeks back, I added and updated some plugins to EEGlab. It seems like after this, the .fdt files are not automatically generated after I save a file – it only saves a .set file. And I was wondering if this is usual, or there might be some issues that I should look into?

EEGLAB datasets can be saved as one file (.set file which is simply a Matlab file with a the extension changed) that embeds the data, or the raw data can be saved as .fdt (raw binary floating point precision file) and a small .set file containing the metadata. The data is the same. The reason for doing so was/is disk access when processing groups of files. It is faster to have 2 files, because the metadata can be loaded faster.

Which plugin do you think modify EEGLAB behavior. The behavior can be changed using menu item EEGLAB > Preferences (or in your version EEGLAB > Memory options).

> In addition, runica also gives a different message. Before the additions/updates to the plugins, runica has been returning the same number of components as per channels (it shows a message: “Fixing rank computation inconsistency (60 vs 59) most likely because running under Linux 64-bit Matlab”).
>
> However, runica now shows this pop-up “attempting to convert data matrix to double precision for more accurate ICA results. Data rank (59) is smaller than no. of channels (60).” and eventually computes 59 ICs. My preprocessing steps before ICA remained similar, and hence I was wondering why this message appears now?

If you compute average reference, then the rank of the data is being decreased by 1 (so 59 instead of 60). If you do not compute average reference, and the reference is not included in the list of channels, then the rank does not need to be decreased. Rank is a hard thing to calculate and there are sometimes numerical instabilities, hence the message you are seeing.

Best wishes,

Arno
_______________________________________________
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