# [FieldTrip] directionality for phase-slope index (PSI)

Jed Meltzer jedmeltzer at yahoo.com
Mon Apr 29 23:27:10 CEST 2019

```Hello, I'm Jed Meltzer, a researcher at the Rotman Research Institute of Baycrest Hospital in Toronto. A student in my lab is working on an MEG project involving connectivity between the left and right motor cortex during hand movement, and we are interested in quantifying causal influences between the two regions using methods such as Granger Causality and phase-slope index (PSI). When calculating PSI in field-trip, we are a bit confused about which direction is which, and are seeking clarification. Here is our cfg setup:
data.label   = {'LM1' 'RM1' 'LV1' 'RV1'}; data.trial   = tdata;
data.time    = tdata_time; data.cfg     = cfg;
%% time-frequency analysis
% tf cfg = []; cfg.output = 'fourier'; cfg.method = 'mtmconvol'; cfg.keeptrials = 'yes'; cfg.taper = 'hanning'; %  cfg.toi = timesec;
cfg.channel = 'all'  cfg.foi = 1:0.5:80;   cfg.t_ftimwin = ones(length(cfg.foi),1).*0.5;   cfg.pad = 10 % this is the parameter to output evenly spaced freq bins
freq = ft_freqanalysis(cfg, data)
freqdim = freq.freq; timedim = freq.time;                                          % psi cfg = []; cfg.method = 'psi'; %  cfg.bandwidth = 5; %  stat = ft_connectivityanalysis(cfg, freq); RM1toLM1_psi = squeeze(stat.psispctrm(1,2,:,:)); LM1toRM1_psi = squeeze(stat.psispctrm(2,1,:,:));

We are not sure about those last two lines of the code. We would like to have the causal influence of channel 1 to channel 2 be reflected as a positive number. We have read through the documentation and we find two parts of it to seem contradictory. First, there is this page:
http://www.fieldtriptoolbox.org/faq/in_what_way_can_frequency_domain_data_be_represented_in_fieldtrip/

It states: ------
Note that this representation lacks a ‘labelcmb’ field, and that the ‘dimord’ is ‘chan_chan_freq’. This means that the numeric data now implicitly contains both the combinations {‘a’ ‘b’} (in coh.cohspctrm(1,2,:) ) , and the combination {‘b’ ‘a’} (in coh.cohspctrm(2,1,:) ). For a quantity like the coherence spectrum the values across the diagonal are symmetric, but for complex-valued quantities, as well as for directional measures of interaction, the values at the entries across the diagonal are typically different. The convention used by FieldTrip is that the row-channel ‘causes’ the column-channel.
--------So, we interpret this to mean that if channel 1 is LM1, and channel 2 is RM1, then we would probably want:  LM1toRM1_psi = squeeze(stat.psispctrm(1,2,:,:));
because the first dimension is the "row" channel and the second dimension is the "column" channel.
However, in the help for the psi function: http://www.fieldtriptoolbox.org/reference/ft_connectivity_psi/
it says:-----If the phase slope
index is positive, then the first chan (1st dim) becomes more lagged (or
less leading) with higher frequency, indicating that it is causally
driven by the second channel (2nd dim)------So following this logic, if we want a positive number to reflect a causal influence from LM1 (channel 1) to RM1 (channel 2), then we would instead want to write:  LM1toRM1_psi = squeeze(stat.psispctrm(2,1,:,:));

Can you help me figure out which one is correct? Our data have periods of both positive and negative PSI (quite interestingly) so it's impossible for us to "guess" which one is correct just from the pattern.
Thanks,Jed
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20190429/076cd4fc/attachment-0001.html>
-------------- next part --------------
_______________________________________________
fieldtrip mailing list
https://mailman.science.ru.nl/mailman/listinfo/fieldtrip
https://doi.org/10.1371/journal.pcbi.1002202
```