ITPC between conditions question

156 views
Skip to first unread message

Natty Boo

unread,
Apr 17, 2016, 7:50:27 PM4/17/16
to AnalyzingNeuralTimeSeriesData
Hello Mike,
First of all, thank you for answering my previous questions! It is incredibly helpful. I currently am trying to implement between-condition testing of inter-trial phase coherence, and have ran into methodological issues. I've read and re-read the codes for chapters 19 and 34, but still have trouble designing the correct analysis method:

Currently I have two conditions, and would like to come up with time-frequency map, do a permutation test, followed by a cluster correction of ITPC on those two conditions, so I can find clusters of significant differences in ITPC between the conditions. 

I compute ITPC for each time point across trials using euler's formula, followed by taking the length of the mean vector, resulting in itpc time-frequency matrices for condition 1 and 2:

for fr=1:num_frex; 
    itpc_cond1(fr,:)=abs(mean(exp(1i(eegphase(fr,:,real_condition_mapping==label1))),2);
    itpc_cond2(fr,:)=abs(mean(exp(1i(eegphase(fr,:,real_condition_mapping==label2))),2); 
end

Then, I am confused how to do a hypothesis test on those two maps. I cannot do a t-test of differences of the itpc values like for power, since I cannot compute standard deviations of the angle values.  I have 2 possible methods in mind:

1) Treat itpc_cond1 and  itpc_cond2  like correlation coefficients, and do Fisher's z-transform on each individually, followed by computing their difference: rdiff = atanh(itpc_cond1) - atanh(itpc_cond2). Then, compute standard error as: SE=sqrt(1/(n1-3)) + 1/(n2-3), and z-score as:  rdiff/SE. The problem with this plan is I'm not sure whether it is statistically valid. 

2) Do a Fisher's Z-transform on the differences of the two maps:
zItpc_1_2=atanh(itpc_cond1-itpc_cond2); Then, assume the underlying data is normal, and create a null distribution for each pixel by by introducing lags 1000x into trials and recomputing Fisher-transformed difference. Then compute a z-map by z-testing each pixel. However then I still have to test whether the difference between conditions is significant, so I have to again take the z-map, and do permutation on it by shuffling trial labels another 1000 times. Then do cluster correction. (This method sounds completely insane to me, and entirely too much shuffling).

Please let me know your thoughts!
Thanks,
Natty


Mike X Cohen

unread,
Apr 18, 2016, 1:42:31 PM4/18/16
to analyzingneura...@googlegroups.com
Hi Natty. Are you trying to do statistical inference within-subject or at the group level? If at the group level, you can try shuffling which condition is subtracted from which. That is, A-B vs. B-A (this can be implemented by multiplying [A-B] by -1 for a random subset of subjects per permutation iteration). You don't need to Z-transform the data in this case. You would want to look for pixels for which the group-average A-B difference is larger than the distribution of shuffled A-B differences. And you could apply cluster-correction here as well.

Does that help?
Mike



--
You received this message because you are subscribed to the Google Groups "AnalyzingNeuralTimeSeriesData" group.
To unsubscribe from this group and stop receiving emails from it, send an email to analyzingneuraltimes...@googlegroups.com.
Visit this group at https://groups.google.com/group/analyzingneuraltimeseriesdata.
For more options, visit https://groups.google.com/d/optout.



--
Mike X Cohen, PhD
mikexcohen.com
Reply all
Reply to author
Forward
0 new messages