Coherence!

Robert Oostenveld r.oostenveld at FCDONDERS.RU.NL
Tue Jan 9 17:53:23 CET 2007


dear Muthuraman

On 9 Jan 2007, at 11:08, Muthuraman Muthuraman wrote:
> %MTMFFT
> cfg.channel    = channelselection({'all' 'M1'}, data.label);
> cfg.channelcmb = channelcombination({'all' 'M1'}, data.label);

for DICS you will also need the cross-spectrum between all EEG
channels. Hence you should do cfg.channelcmb = 'all'. The code above
is fine if you want to look at coherence on channel level, which is
what you currently are looking at.

> cfg.foilim     = [2 30];
> cfg.taper      = 'hanning';
> cfg.pad        = 1;
> cfg.keeptrials = 'yes';
> cfg.variance   = 'yes';
> cfg.jackknife  = 'yes';
> freqmtmfft     = freqanalysis(cfg, data);
> fdmtmfft       = freqdescriptives([], freqmtmfft);

This uses 1 hanning taper, and you have one-second long data
segments. Hence the frequency resolution is 1/1s = 1Hz.

> %MTMWELCH
> cfg.method     = 'mtmwelch';
> cfg.output     = 'powandcsd';
> cfg.foi        = [2:2:30];
> cfg.t_ftimwin  = ones(1,length(cfg.foi)).*0.5;
> cfg.taper      = 'hanning';
> cfg.pad        = 1;

This uses a 500ms window per trial to do the estimation. That gives
you a 1/0.5 = 2Hz frequency resolution. The lower frequency
resolution implies that there is more frequency smoothing, so the
estimate will be different. If the true coherence peak is broad-band
(i.e. broader than 1 Hz), then the estimate will probably be better
(=higher), if not, then it will be worse (=lower).

> cfg.keeptrials = 'yes';
> cfg.variance   = 'yes';
> cfg.jackknife  = 'yes';
> freqmtmwelch   = freqanalysis(cfg, data);
> fdmtmwelch     = freqdescriptives([], freqmtmwelch);

You probably should do
   cfg = []
   cfg.variance   = 'yes';
   cfg.jackknife  = 'yes';
and then
   fdmtmwelch     = freqdescriptives(cfg, freqmtmwelch);
since the variance options do not apply to freqanalysis, but to
freqdescriptives instead.

> I have attached a figure with this mail[Coherence between C3 and
> M1] in which there is a difference in coherence values
> for the fieldtrip method and the welch periodogram method with and
> without laplacian transform
>
> Is there any input parameters i can change in the fieldtrip analysis
> so that i can have the similar values, or is there any major
> differences in the methods
> with fieldtrip and Welch periodogram method.

There is a difference in scalp-current-density (laplacian) data and
EEG potential data, so I also expect coherence to be different. It is
better to report channel level CSD/laplacian coherence than channel-
level ordinary potential difference, since SCD/laplacian is reference
free and potential is not. Note that you can also use FT to compute
coherence on SCD data, assuming that you can export the laplacian
data to a raw file. I don't know which software you used to compute
the SCD/laplacian and welsh coherence that you have in the figure,
therefore I also cannot comment on why the values are different. The
difference between the mtmfft and mtmwelsh can be explained (see
above) because the different frequency resolutions.

best regards,
Robert



More information about the fieldtrip mailing list