[Eeglablist] A few questions about the use of "tftopo" function, thanks~

arno arno at salk.edu
Mon Feb 12 12:18:25 PST 2007


>  1. As far as I understand from the function manual, the 'signifs' is like
> a threshold for "simple effect" across electrodes/subjects, and 'sigthresh'
> is more like a "random effect" that you can run significance test in a
> single electrode or subject level and then ask what's the conjunction
> result, are my understanding on the right direction?  If so, what's a
> general rule to set up the threshold for 'sigthresh'?

'signifs' has the same format as the output of timef() for significance (see
timef() help). There is also a script that takes timef() output to
use tftopo(). 

http://www.sccn.ucsd.edu/eeglab/scripttut/script_tutorial.html#script%20for%20performing%20time-frequency%20decompositions

In 'signif' there is one significance map per subject and per electrode.
'sigthresh' defines threshold in terms of number of subject and electrode.
For instance, with 'sigthresh' equal to [4 6], it means that on the picture,
significance mask is applied only when at least 4 electrodes are significant.
On top of that, regions are masked where less than 6 subjects are significant.
This uses binomial statistics to correct for multiple comparisons.
For instance, what is the probability that 12 out of 12 subjects have
significant results at a given time-frequency point given at threshold
at p=0.05 on each subject. It is 0.05^12. For less than 12/12, you must use
binomial statistics to compute the exact probability.

This approach is correct although it does not allow you to generalize to
an arbitrary population. The binomial statistics work on individual subjects
not on the data population. Therefore all the inferences you make are
about the subjects you are observing. You cannot make any conclusion about
the population from which they are drawn (which is usually what you are
wanting to do).

For this reason, we prefer not to use this scheme any more (even if we were the
one to implement it). We prefer to pool all the subject single trials, and 
perform a time-frequency decomposition or perform a surrogate test (or 
parametric) on the average time-frequency from each subject (ignoring the
significance mask of each subject). This works fine. This is actually the
approach which is implemented in the new EEGLAB version to compare conditions
in studies (available very soon). Email toby at sccn.ucsd.edu if you want to
beta test this new version now.

>  2. in the option of 'sinifs',  the matrix should either ([1|2], freqs,
> chans, subjects). or [1|2], freqs,times chans, subjects), I'm a little
> confused what's the [1|2] refers to?

For ITCs, there is only one threshold value (the minimum significant ITC value 
at all time/frequency ITC_threshold). The plot a single time-frequency map, 
you would simply plot "ITC_map > ITC_threshold". For ERSP, there is a minimum
and a maximum so there are 2 values. We will either clarify the help message
or remove this feature altogether (see above).

> 3. Brefore using tftopo, we should first use the loop script to calculate
> the Time/Freq analysis for each channel and/or subject, then save the ERSP
> matrix, then run tftopo, then set the threshold using 'signifs' for simple
> effect, or use both 'sinifs' and 'sigthresh' to set a threshold for random
> effect?

I hope my message above clarifies the situation. I would advise that you
wait for the next version of EEGLAB unless you really need the tftopo look
(with scalp maps). In this case, it might be better to reprogram non-parametric
testing on the time-frequency averages(we have general functions for that; just
contact us at eeglab at sccn.ucsd.edu).

Arno




More information about the eeglablist mailing list