<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<span class="x_elementToProof" style="font-size: 12pt; margin: 0px; background-color: rgb(255, 255, 255);"><span class="x_x_elementToProof x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">Hi fieldtrippers,</span></span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<div class="x_elementToProof" style="font-size: 12pt; margin: 0px; background-color: rgb(255, 255, 255);">
<div class="x_x_elementToProof" style="margin: 0px; background-color: rgb(255, 255, 255);">
<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
I am trying to perform cluster-based permutation testing on a single channel of DBS electrode data to cluster in time/frequency rather than spatially. I have already pre-processed, cleaned, and separated time-locked events for the data outside of fieldtrip,
 leaving me with measures of baseline-corrected power in a data array with these dimensions: (<span class="x_ContentPasted0 ContentPasted0" style="margin:0px">50 frequencies x 500 time samples x 180 trials x 3 events).</span></div>
<div class="x_x_elementToProof" style="margin: 0px; background-color: rgb(255, 255, 255);">
<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
The dimensions can be described by:</div>
<div class="x_x_elementToProof" style="margin: 0px; background-color: rgb(255, 255, 255);">
<ul data-editing-info="{"orderedStyleType":1,"unorderedStyleType":2}">
<li style="list-style-type:"- ""><span class="x_ContentPasted0 ContentPasted0" style="margin:0px">50 Morlet wavelets from 0 to 50Hz --> power at 50 frequencies</span></li><li style="list-style-type:"- ""><span class="x_ContentPasted0 ContentPasted0" style="margin:0px">500 samples = 1 second before and after time locked event in the task (at 250Hz sampling rate)</span></li><li style="list-style-type:"- ""><span class="x_ContentPasted0 ContentPasted0" style="margin:0px">180 trials of the task</span></li><li style="list-style-type:"- ""><span class="x_ContentPasted0 ContentPasted0" style="margin:0px">3 events/epochs - onset of task, choice taken in task, outcome of task</span></li></ul>
</div>
<div class="x_x_elementToProof" style="margin: 0px; background-color: rgb(255, 255, 255);">
<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
If I were to plot the average power across all trials for the onset event, I can see how power changes on a spectrogram plot. My goal is to find the significant clusters that show up on the spectrogram as a first step to finding interesting frequency bands.
 To do so for one subject (with a single DBS lead), I reorganized the data to have these dimensions (180 trials x 3 events x 50 freqs x 500 time) and put it into a fieldtrip struct as follows:</div>
<div class="x_x_elementToProof x_x_ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_x_ContentPasted0 x_x_ContentPasted2 x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
data_ft = [];
<div class="x_x_ContentPasted0 x_ContentPasted0 ContentPasted0" style="margin:0px">
data_ft.dimord = 'rpt_chan_freq_time';</div>
<div class="x_x_ContentPasted0 x_ContentPasted0 ContentPasted0" style="margin:0px">
data_ft.label = {'Onset','Choice','Outcome'}';</div>
<div class="x_x_ContentPasted0 x_ContentPasted0 ContentPasted0" style="margin:0px">
data_ft.freq = linspace(1, 50, 50);</div>
<div class="x_x_ContentPasted0 x_ContentPasted0 ContentPasted0" style="margin:0px">
data_ft.time = linspace(-1, 1, 500);<br class="x_ContentPasted0 ContentPasted0">
</div>
data_ft.powspctrm = data;<br class="x_x_ContentPasted2 x_ContentPasted0 ContentPasted0">
<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_ContentPasted0 x_elementToProof ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
where I am using the events as the "channels" so I can choose one at a time.</div>
<div class="x_x_elementToProof" style="margin: 0px; background-color: rgb(255, 255, 255);">
<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
The cfg for ft_freqstatistics looks like this:</div>
<div class="x_x_elementToProof x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
cfg = [];
<div class="x_x_ContentPasted1 x_ContentPasted0 x_elementToProof ContentPasted0" style="margin:0px">
cfg.method = 'montecarlo';</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.statistic = 'indepsamplesT';</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.correctm = 'cluster';</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.clusteralpha = 0.05;</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.clustertail = 0;</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.clusterstatistic = 'maxsum';</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.tail = 0;</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.alpha = 0.025;</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.numrandomization = 1000;  </div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.design = ones(size(data_ft.powspctrm, 1), 1); % size = 180 x 1</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.ivar = 1; </div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.channel = {'Onset'};</div>
<div class="x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin:0px">
cfg.neighbours = []; </div>
<div style="margin:0px"><br class="x_ContentPasted0 ContentPasted0">
</div>
[stat] = ft_freqstatistics(cfg, data_ft);<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_x_ContentPasted1" style="margin: 0px; background-color: rgb(255, 255, 255);">
<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_x_ContentPasted1 x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
following other fieldtrip threads noting that the neighbours field should be left blank to denote clustering in time/frequency rather than spatially across channels. When I run ft_freqstatistics, I get the following error:</div>
<div class="x_x_elementToProof x_x_ContentPasted1" style="margin: 0px; background-color: rgb(255, 255, 255);">
<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_x_ContentPasted1 x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">
Error using findcluster
<div class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin:0px">
invalid dimension of spatdimneighbstructmat</div>
<div style="margin:0px"><br class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin:0px">
Error in clusterstat (line 214)</div>
<div class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin:0px">
  posclusobs = findcluster(tmp, connmat, cfg.minnbchan);</div>
<div style="margin:0px"><br class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin:0px">
Error in ft_statistics_montecarlo (line 364)</div>
<div class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin:0px">
  [stat, cfg] = clusterstat(cfg, statrand, statobs);</div>
<div style="margin:0px"><br class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin:0px">
Error in ft_freqstatistics (line 194)</div>
  [stat, cfg] = statmethod(cfg, dat, design);<br class="x_ContentPasted0 ContentPasted0">
</div>
<div class="x_x_elementToProof x_x_ContentPasted1 x_x_ContentPasted3" style="margin: 0px; background-color: rgb(255, 255, 255);">
<br class="x_ContentPasted0 ContentPasted0">
</div>
</div>
<div class="x_elementToProof" style="font-size: 12pt; margin: 0px; background-color: rgb(255, 255, 255);">
<span class="x_x_elementToProof x_x_ContentPasted1 x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">The dimension of spatdimneighbstructmat is given by connmat, which is 0 in this case since I didn't
 specify a neighboring scheme. Is there any other way to cluster in time/frequency and not spatially when looking at only a single channel of data?</span><br class="ContentPasted0">
</div>
<div class="x_elementToProof" style="font-size: 12pt; margin: 0px; background-color: rgb(255, 255, 255);">
<span class="x_x_elementToProof x_x_ContentPasted1 x_x_ContentPasted3 x_ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);"><br class="ContentPasted0">
</span></div>
<div class="x_elementToProof" style="font-size: 12pt; margin: 0px; background-color: rgb(255, 255, 255);">
<span class="x_x_elementToProof x_x_ContentPasted1 x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">Thank you,</span></div>
<div class="x_elementToProof" style="font-size: 12pt; margin: 0px; background-color: rgb(255, 255, 255);">
<span class="x_x_elementToProof x_x_ContentPasted1 x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">Stephanie Brener</span></div>
<span class="x_elementToProof" style="font-size: 12pt; margin: 0px; background-color: rgb(255, 255, 255);"><span class="x_x_elementToProof x_x_ContentPasted1 x_x_ContentPasted3 x_ContentPasted0 ContentPasted0" style="margin: 0px; background-color: rgb(255, 255, 255);">UC
 San Francisco</span></span><br>
</div>
</body>
</html>