[FieldTrip] Clustering channel dimension of DTF Connectivity

"Jörn M. Horschig" jm.horschig at donders.ru.nl
Mon May 13 14:14:44 CEST 2013


Dear Tony,

I had a quick look at your code, and I think it is fine. However, I 
would define neighbours purely based on the target sensor, not on the 
reference, e.g. when computing cortico-muscular coherence on channel 
level, you  are interested in spatial clusters near the cortex and not 
in cluster on the arm where the reference sensor is.
Also check out this:

data = ft_checkdata(data, 'cmbrepresentation', 'full');

This will turn chancmb (Nx1) into chan X chan (RxS, where R*S = N).

Best,
Jörn

On 5/8/2013 11:17 PM, Antony Passaro wrote:
> Hi Fieldtrippers,
> I am trying to perform a group-level comparison of 2 conditions across 
> 10 subjects based on the DTF connectivity. For the time being, we are 
> looking at the DTF for a subset of frequencies (alpha) and choosing 
> the avgoverfreq option which gives us a 4096 x 1 matrix since we are 
> looking at 64 x 64 channels. Using ft_freqstatistics, I noticed that 
> it will throw an error explaining that there is not yet an 
> implementation for data with channelcmb for a cluster analysis so I 
> took it upon myself to identify channel pairs which should be 
> considered neighbors and build a new neighbor structure prior to 
> running ft_freqstatistics. To do that, I took the basic neighbor 
> structure for 64 channels and then created a new neighbor structure of 
> 4096 channel pairs based on the code below:
> for i=1:4096
> label{i,1} = [dtf.labelcmb{i,1},'_',dtf.labelcmb{i,2}];
> end
> labelcmb = dtf.labelcmb;
>
> chans=64;
> %Identify the channel pairs which are neighbors with the target channel
> NBtarget = {};
> for ch=1:chans^2
> NBtarget(ch).label = label{ch};
> target = find(cellfun(@(x) 
> strcmp(labelcmb{ch,1},x),{neighbours(:).label}) ==1) ;
> tempnb = cellfun(@(x) strcat(x,['_' 
> labelcmb{ch,2}]),{neighbours(1,target).neighblabel},'UniformOutput',0);
> NBtarget(ch).neighblabel = tempnb{:};
> end
>
> %Identify the channel pairs which are neighbors with the reference channel
> NBref = {};
> for ch=1:chans^2
> NBref(ch).label = label{ch};
> target = find(cellfun(@(x) 
> strcmp(labelcmb{ch,2},x),{neighbours(:).label}) ==1) ;
> tempnb = cellfun(@(x) strcat([labelcmb{ch,1} 
> '_'],x),{neighbours(1,target).neighblabel},'UniformOutput',0);
> NBref(ch).neighblabel = tempnb{:};
> end
>
>
> %Append both sets of neighbors (ref and target)
> NBboth= {};
> for ch=1:chans^2
> NBboth(ch).label = label{ch};
> NBboth(ch).neighblabel = [NBref(ch).neighblabel; 
> NBtarget(ch).neighblabel];
> end
> This seems to work and the clustering method proceeds without error. 
> My question is the following: is this the proper way to utilize the 
> clustering method using ft_freqstatistics on connectivity data or am I 
> missing something?
> Thanks,
> -Tony
>
>
>
> _______________________________________________
> fieldtrip mailing list
> fieldtrip at donders.ru.nl
> http://mailman.science.ru.nl/mailman/listinfo/fieldtrip


-- 
Jörn M. Horschig
PhD Student
Donders Institute for Brain, Cognition and Behaviour
Centre for Cognitive Neuroimaging
Radboud University Nijmegen
Neuronal Oscillations Group
FieldTrip Development Team

P.O. Box 9101
NL-6500 HB Nijmegen
The Netherlands

Contact:
E-Mail: jm.horschig at donders.ru.nl
Tel:    +31-(0)24-36-68493
Web: http://www.ru.nl/donders

Visiting address:
Trigon, room 2.30
Kapittelweg 29
NL-6525 EN Nijmegen
The Netherlands

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20130513/ea44d5dc/attachment-0002.html>


More information about the fieldtrip mailing list