[FieldTrip] Cluster-based permutation test on single channel in time-domain

mikkelcv at drcmr.dk mikkelcv at drcmr.dk
Wed Apr 17 15:45:32 CEST 2024


Dear Pia

It is perfectly valid to do cluster-based permutation tests on the time series of a single channel without the need for spatial clustering. If you have a hypothesis about a specific channel location, this is indeed the best thing to do.

However, be aware that the goal of identifying significant temporal clusters is ill-posed, as the test does not test for ”significant clusters” but tests the interchangeability of the condition labels on your data.

This also means that the “validity” of a cluster is not comparable across tests with different complexities, i.e., single channel or full sensor array, as the two tests are testing different hypotheses, namely the interchangeability of the condition labels on the full sensor array or the interchangeability of the condition labels on the a priori selected channel.

It is explained in more detail here: https://www.fieldtriptoolbox.org/faq/how_not_to_interpret_results_from_a_cluster-based_permutation_test/

Best regards
Mikkel

Fra: fieldtrip <fieldtrip-bounces at science.ru.nl> på vegne af Pia Reinfeld via fieldtrip <fieldtrip at science.ru.nl>
Dato: onsdag, 17. april 2024 kl. 15.18
Til: fieldtrip at science.ru.nl <fieldtrip at science.ru.nl>
Cc: Pia Reinfeld <pia.reinfeld at outlook.com>, Paul Steinfath <steinfath at cbs.mpg.de>
Emne: [FieldTrip] Cluster-based permutation test on single channel in time-domain
Dear FieldTrip Community,

I'm currently working on a project where I'm interested in exploring single channel differences between two conditions using cluster-based permutation tests.  My aim is to only identify significant temporal clusters, without considering spatial clusters across multiple channels. I've configured my analysis as follows:

cfg_stats = [];
cfg_stats.neighbours = [];
cfg_stats.channel = 'ECG';
cfg_stats.latency = time_stat;
cfg_stats.avgovertime = 'no';
cfg_stats.minnbchan = 0;
cfg_stats.parameter = 'avg';
cfg_stats.correctm = 'cluster';
cfg_stats.method = 'montecarlo';
cfg_stats.statistic = 'depsamplesT';
cfg_stats.clusterstatistic = 'maxsum';
cfg_stats.alpha = 0.05;
cfg_stats.correcttail = 'prob';
cfg_stats.clustertail = 0;
cfg_stats.clusteralpha = 0.025;
cfg_stats.numrandomization = 1000;

Nsubj = length(reference);
design = zeros(2, Nsubj*2);
design(1,:) = [1:Nsubj 1:Nsubj];
design(2,:) = [ones(1,Nsubj) ones(1,Nsubj)*2];
cfg.design = design;
cfg.uvar = 1;
cfg.ivar = 2;
cfg_stats.design = design;
cfg_stats.uvar = 1;
cfg_stats.ivar = 2;

stat = ft_timelockstatistics(cfg_stats, reference{:}, target{:});

My question is whether this approach of focusing solely on temporal clusters within a single channel is justifiable and valid?
Additionally, I am curious about the comparability of the clusters found solely in the time domain with those identified through both time and space domain analyses. Does focusing only on the time domain potentially simplify the detection of significant clusters? In other words, are clusters which are only identified in time more prone to being detected due to the reduced complexity of the analysis, or does this approach yield results that are comparable in validity to those obtained through spatial-temporal cluster analyses?

Further, if there are any suggestions for improving this configuration or if there are alternative approaches that I should consider, I would greatly appreciate your input.

Thank you for your time and assistance.

All the best
Pia
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20240417/819262b7/attachment.htm>


More information about the fieldtrip mailing list