[Eeglablist] artifacts in time freq plots

Arnaud Delorme arno at ucsd.edu
Tue May 11 20:28:28 PDT 2010

Dear Ondrej,

I have looked in detail in your detailed analysis.

First, thank you for looking in detail into that. Even though these  
messages are scary (we can never be sure that EEGLAB is bug free), we  
greatly appreciate that people like you take the time to test that the  
functions are doing what they are supposed to do.

Regarding your analysis, all of the problems you encounter are due to  
using the baseline option in a specific way on this artificial data  
(see below). First, you should try the "'baseline', NaN" option which  
does not perform any baseline. It is the first thing to do before  
trying other types of baseline. I am attaching here a screen copy of  
the decomposition on your data. We can clearly see the two frequencies  
that you have generated.

using your data, this is the command line call "figure;  
[ersp,itc,powbase,times,freqs,erspboot,itcboot] = newtimef(x, 8*2048,  
[-500 6000], 2048, 0,'baseline',NaN,'basenorm','off', 'maxfreq' , 
20,'nfreqs',50,'padratio', 32, 'scale', 'abs');"

Then, comes the baseline. The graphs you produce are meaningful until  
you start using the 'basenorm' option. The "basenorm" option is used  
compute and show z scores (we prefer dB ourselves but some other  
researchers prefer to use z-score). In your case your baseline is from  
-500 ms to 500 ms. It means that the standard deviation will be 0 at  
most frequency except at 6 Hz. A standard deviation of 0 (when  
normalizing) makes the weights blow up to close to infinity (your  
power is 10^7 standard deviation). It does not totally blow up to  
infinity since the standard deviation of the baseline is not perfectly  
0 but a very small number. The strange plots you are observing are due  
to that. I have looked into detail in the code of the function and I  
plotted all intermediary results from inside the function itself and  
there is no doubt about that.

Note also that the newtimef function was primarily designed to process  
data trials and not continuous data. This is the reason why the inter- 
trial coherence measure for your data returns meaningless results (ITC  
is only relevant for more than 1 trial).

Let me know if you have other questions or comments,


On May 7, 2010, at 8:53 AM, ondrej lassak wrote:

> I fed the TF analysis single sinusoid 6 and 12Hz and the TF plot  
> shows multiple specral lines (more than two).
> How can one rely on the TF when it introduces such massive artifacts  
> both in pure FFT spectrogram and Wavelet scalogram?
> Or am I doing something wrong? When only one freq during the whole  
> time span is present the TF plots look like really bad moira and the  
> presence of the freq is apparent only from the summation over time  
> (left from the  main plot).
> The matlab report with function calls and resulting pictures is  
> attached below (no scripts embedded in the html).

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://sccn.ucsd.edu/pipermail/eeglablist/attachments/20100511/13fa33b3/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pastedGraphic.tiff
Type: image/tiff
Size: 23636 bytes
Desc: not available
Url : http://sccn.ucsd.edu/pipermail/eeglablist/attachments/20100511/13fa33b3/attachment-0001.tiff 

More information about the eeglablist mailing list