I think I found at least part of the solution to my problem:<br>I keep the reference channel (in my case an average of all electrodes) in the dataset. This seems to reduce the rank of the data (the svd vector drops close to zero on the last value). I think I get an intuition of why it does so, but how am I supposed to do?<br>
Overall, I've checked, the subjects on which I removed one or more bad channels (after rereferencing) are fine. Their ICA looks nice, and the svd values do not drop close to zero on the last value.<br>The problem is for those for whom I did not remove any bad channel. Their ICA shows the symptoms shown on my last email, below.<br>
<br>So my questions end up being:<br>Do I have to reference my data to one electrode and not include it in
the ICA? and if so, why would anyone use an average reference before
ICA? what is recommended? I can't find anything about referencing the
data in the tutorial.<br>
<br>
Thanks,<br>Max<br><br><div class="gmail_quote">2011/9/7 Maximilien Chaumon <span dir="ltr"><<a href="mailto:maximilien.chaumon@gmail.com">maximilien.chaumon@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi eeglabbers,<br><br>I am still having issues with ICA returning extremely similar (but not identical) topographies. The gui (although I run a version updated a few days ago) does not popup any suggestion to reduce the rank. I only get this warning (Warning: fixing rank computation inconsistency (68 vs 69) most likely because running under Linux 64-bit MatlabAttempting to convert data matrix to double precision for more accurate ICA results.) I still get 69 components in the end.<br>
<br>Here's some more info:<br>the rank of the data is 68. The svd drops abruptly close to zero at the last value. I have 69 electrodes (64 heancap + 3EOG+2mastoids). I guess there's a gel bridge somewhere. Although correlations between all electrodes don't reach .95.<br>
When I let the ICA run with default options, I still get <a href="http://oszilla.hgs.hu-berlin.de/public/2P3like_components.png" target="_blank">these two components</a> (always 'P3 like' components, this was reproduced in other subjects). Their frequency profiles are too good to be true, with low noise and a peak at 10Hz, another one around 20Hz, see the figure. I would leave them alone if they were not spoiling all my data: As I remove the components, when I click this 'singles' button, which shows me the trial by trial time course. I get what is shown on the right of the <a href="http://oszilla.hgs.hu-berlin.de/public/2P3like_components.png" target="_blank">figure</a>. High frequency bursts appearing every now and then, usually at times where there is high variability across channels.<br>
Removing both components resolves the issue, but I loose a rather important part of the data.<br>Here is the <a href="http://oszilla.hgs.hu-berlin.de/public/2P3spectopo.png" target="_blank">spectopo at 60Hz</a>. There is a strong artefact here. The two components show a high power at all frequencies.<br>
How could frequencies that do not exist in the input be created by the ICA? I filter my data, before ICA below 45Hz.<br><br>I tried running fastica, asking for 68 components, no such artifact appears but the decomposition looks much less nice, at least with the parameters I've used.<br>
<br>So in the end, my question is: <br>How can I run an ICA without trouble if the rank of the data is not equal to the number of electrodes? How can I identify potentially gel bridged electrodes?<br><br>Many thanks,<br>
Max<div><div></div><div class="h5"><br>
<br><br><div class="gmail_quote">2011/8/27 Arnaud Delorme <span dir="ltr"><<a href="mailto:arno@ucsd.edu" target="_blank">arno@ucsd.edu</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word">Regarding the matrix rank, we have recently realized that the rank function (and other rank function we had programmed) are not fully reliable which is probably with Max observes the component he observes. The runica function should automatically decrease the rank of the input data matrix. However, sometimes it does not use the correct rank. We have modified the runica GUI so that if the matrix is not full rank, it now pops up a new window suggesting to the user a rank reduced value. This value may be adjusted by the user based on prior knowledge. For instance, if you have removed 5 components from the data, you would reduce the rank by 5 (and overwrite the rank that is automatically detected if it is not correct).<div>
<br></div><div>Arno<div><div></div><div><div><br><div><div>On Aug 23, 2011, at 10:11 PM, John J.B. Allen wrote:</div><br><blockquote type="cite">Max<div><br></div><div>I have observed that when the data are not full rank. You can test the rank of your data by reshaping your epoched data to a 2D matrix, and running the rank command, like this:</div>
<div><br></div>
<div>rank(reshape(EEG.data,EEG.nbchan,EEG.trials*EEG.pnts))</div><div><br></div><div>When I did this, your rank is 63, but you have 69 channels, indicating that some channels are linearly dependent on others. I think this is the source of your problem, and if you remove those channels before running ICA, you should no longer see this issue.</div>
<div><br></div><div>Best</div><div><br></div><div>John</div><div><br></div><div><br></div><div><br><br><div class="gmail_quote">On Tue, Aug 23, 2011 at 07:24, Maximilien Chaumon <span dir="ltr"><<a href="mailto:maximilien.chaumon@gmail.com" target="_blank">maximilien.chaumon@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi eeglabbers,<br><br>I sometimes get ICs with extremely similar topographies and time courses, like on <a href="http://oszilla.hgs.hu-berlin.de/public/Similar_ICs.PNG" target="_blank">this slide</a>.<br>
I know that ICA returns independent components.<br>
Does that not mean that they should not look the same?<br>I know the components are independent in a statistical sense, which is not
the same as uncorrelated, but still. I'm a bit surprised. What do these two components mean if they cancel one another? well, do they?<br><br>Sorry if my question is naive, but what is happening?<br><br>The data is <a href="http://oszilla.hgs.hu-berlin.de/public/Similar_ICs.mat" target="_blank">here</a>.<br>
<br>Best,<br>Max<br>
<br>_______________________________________________<br>
Eeglablist page: <a href="http://sccn.ucsd.edu/eeglab/eeglabmail.html" target="_blank">http://sccn.ucsd.edu/eeglab/eeglabmail.html</a><br>
To unsubscribe, send an empty email to <a href="mailto:eeglablist-unsubscribe@sccn.ucsd.edu" target="_blank">eeglablist-unsubscribe@sccn.ucsd.edu</a><br>
For digest mode, send an email with the subject "set digest mime" to <a href="mailto:eeglablist-request@sccn.ucsd.edu" target="_blank">eeglablist-request@sccn.ucsd.edu</a><br></blockquote></div><br></div>
_______________________________________________<br>Eeglablist page: <a href="http://sccn.ucsd.edu/eeglab/eeglabmail.html" target="_blank">http://sccn.ucsd.edu/eeglab/eeglabmail.html</a><br>To unsubscribe, send an empty email to <a href="mailto:eeglablist-unsubscribe@sccn.ucsd.edu" target="_blank">eeglablist-unsubscribe@sccn.ucsd.edu</a><br>
For digest mode, send an email with the subject "set digest mime" to <a href="mailto:eeglablist-request@sccn.ucsd.edu" target="_blank">eeglablist-request@sccn.ucsd.edu</a></blockquote></div><br></div></div></div>
</div></div></blockquote></div><br>
</div></div></blockquote></div><br>