[FieldTrip] granger causality

Tobias Staudigl tobias.staudigl at uni-konstanz.de
Fri Jun 10 12:42:51 CEST 2011

Dear all,

I am trying to make sense out of a granger-causality analysis i did 
using ft-functions.
I have two condition in which i already identified a sig. difference in 
plv. now i would like to know the directionality of the coupling in one 
of the conditions.
To this end, I use granger causality as implemented in fieldtrip (see 
below for details). At the moment, i have 3 questions.
(As i am not very familiar with using fieldtrip, i may have missed 
something obvious).

Q 1:
If I understood correctly, the grangerspectrum (granger.grangerspctrm) 
gives me values for the granger-causality in a matrix [nChannel, 
nChannel, Freqs].
Does [1,2,:] give me the granger-causality of Channel1 predicting 
Channel2, or the other way round?

The plotting function gives me an error:

ft_connectivityplot(cfg, granger)

??? Error using ==> seloverdim at 36
cannot select over multiple dimensions at the same time

Error in ==> ft_selectdata at 528
   if selectchan, data = seloverdim(data, 'chan', selchan, fb); end

Error in ==> ft_connectivityplot at 79
data        = ft_selectdata(data, 'channel', cfg.channel);

How do i statistically validate the measures i get fromthe granger-analysis?
Is there some recommended statistical test?
Is it correct to do bootstrapping / permutation testing?
What I could do on my data is shuffle the trials across conditions, 
compute granger causality on the shuffeld data, and compair this 
distribution with the value i get from the data.

Maybe, somebody is experienced in using granger and could help me out!
Any advice appreciated!

Thanks a lot!

I used the following ft_functions according to the online tutorial:

cfg         = [];
cfg.order   = 2;
cfg.toolbox = 'bsmart';
mdata       = ft_mvaranalysis(cfg, data);

%% transfer function
cfg        = [];
cfg.method = 'mvar';
mfreq      = ft_freqanalysis(cfg, mdata);

%% granger
cfg           = [];
cfg.method    = 'granger';
granger       = ft_connectivityanalysis(cfg, mfreq);

cfg        = [];
cfg.zparam = 'grangerspctrm';
%cfg.channel = 'all';
ft_connectivityplot(cfg, granger);

Tobias Staudigl
Fachbereich Psychologie - ZPR
Postfach ZPR
78457 Konstanz
ZPR, Haus 12
Tel.: +49 (0)7531 / 88 - 5703

More information about the fieldtrip mailing list