OSCR

Beta-band frequency shifts signal decisions in human prefrontal cortex

Code ↔ Paper

1 match between paragraphs of the paper and lines of its authors' code, computed by the harvester (lexical-v1). Click a colored paragraph or line to see its counterpart.

The 1 match
  1. [1] § STAR★Methods › Quantification and statistical analysis › Burst analysis ↔ qmt4z/exp1_freqshift.m, lines 137–200 · score 0.59 · Spectral Events, findMethod, bursts, band

Paper

Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC

The paper is loaded when this pane is shown.

The authors' code

MATLAB · 457 lines · 13 KB · no license · 1 match

  1. %% timelock and trial select
  2. % load ~epx1_instfreq_decdelay.mat'
  3. for si = 1:numel(decdelay_instfreq)
  4. trl = decdelay_instfreq{si}.trialinfo;
  5. % F1_trls = find(trl(:,5)==1 & trl(:,1)==1 & trl(:,4)==1); % correct short
  6. % F2_trls = find(trl(:,5)==1 & trl(:,1)==1 & trl(:,4)==2); % correct long
  7. F1_trls = find( (trl(:,3)==1 & trl(:,4)==1) | (trl(:,3)==2 & trl(:,4)==0) ); % subjective short
  8. F2_trls = find( (trl(:,3)==2 & trl(:,4)==1) | (trl(:,3)==1 & trl(:,4)==0) ); % correct long
  9. % F1_trls = find(trl(:,3)==1 & trl(:,4)==1); % correct short
  10. % F2_trls = find(trl(:,3)==2 & trl(:,4)==1); % correct long
  11. min_trls = min(numel(F1_trls), numel(F2_trls));
  12. F1 = randsample(F1_trls, min_trls);
  13. F2 = randsample(F2_trls, min_trls);
  14. % cfg = [];
  15. % cfg.demean = 'yes';
  16. % cfg.baselinewindow = [-.3 0];
  17. % decdelay_instfreqsi = ft_preprocessing(cfg, decdelay_instfreq{si})
  18. cfg = [];
  19. cfg.latency = [-.5 2];
  20. cfg.trials = F1;
  21. F1_if{si} = ft_timelockanalysis(cfg, decdelay_instfreq{si});
  22. cfg.trials = F2;
  23. F2_if{si} = ft_timelockanalysis(cfg, decdelay_instfreq{si});
  24. clear decdelay_instfreqsi
  25. % cfg = [];
  26. % cfg.baseline = [-.1 0];
  27. % F1_if{si} = ft_timelockbaseline(cfg, F1_if{si})
  28. % F2_if{si} = ft_timelockbaseline(cfg, F2_if{si})
  29. si
  30. end
  31. %% GA
  32. cfg = [];
  33. %cfg.keepindividual = 'yes';
  34. GAF1 = ft_timelockgrandaverage(cfg, F1_if{:});
  35. GAF2 = ft_timelockgrandaverage(cfg, F2_if{:});
  36. %% plot
  37. figure;
  38. plot(GAF1.time, GAF1.avg(2,:))
  39. hold on;
  40. plot(GAF2.time, GAF2.avg(2,:))
  41. xlim([-.3 2.2])
  42. %% stat
  43. label = F1_if{1}.label;
  44. % neighbours(1).label = label{1};
  45. % neighbours(1).neighblabel = {[label{2}, '; ' label{3}, '; ' label{4}]};
  46. % neighbours(2).label = label{2};
  47. % neighbours(2).neighblabel = {[label{1}, '; ' label{3}, '; ' label{4}]};
  48. % neighbours(3).label = label{3};
  49. % neighbours(3).neighblabel = {[label{1}, '; ' label{2}, '; ' label{4}]};
  50. % neighbours(4).label = label{4};
  51. % neighbours(4).neighblabel = {[label{1}, '; ' label{2}, '; ' label{3}]};
  52. neighbours(1).label = label{1};
  53. neighbours(1).neighblabel = label(3);
  54. neighbours(2).label = label{2};
  55. neighbours(2).neighblabel = label(4);
  56. neighbours(3).label = label{3};
  57. neighbours(3).neighblabel = label(1);
  58. neighbours(4).label = label{4};
  59. neighbours(4).neighblabel = label(2);
  60. %
  61. cfg = [];
  62. cfg.method = 'montecarlo';
  63. cfg.statistic = 'depsamplesT';
  64. cfg.correctm = 'cluster';
  65. cfg.clusteralpha = 0.05;
  66. %cfg.frequency = [4 30];
  67. cfg.latency = [0 2];
  68. cfg.clusterstatistic = 'wcm';
  69. cfg.tail = 0; % -1, 1 or 0 (default = 0); one-sided or two-sided test
  70. cfg.clustertail = 0;
  71. cfg.alpha = 0.05; % alpha level of the permutation test
  72. cfg.numrandomization = 5000;
  73. % design
  74. ll = numel(F1_if);
  75. design = [];
  76. design = repmat(1:ll, 1, 2);
  77. design(2,:) = [repmat(1, 1, ll) repmat(2, 1, ll)];
  78. cfg.design = design;
  79. %cfg.minnbchan = 1;
  80. cfg.ivar = 2;
  81. cfg.uvar = 1;
  82. cfg.neighbours = neighbours;
  83. cfg.channel = [1:4];
  84. stat = ft_timelockstatistics(cfg, F1_if{:}, F2_if{:}) % negclu
  85. %stat = ft_timelockstatistics(cfg, GAF1, GAF2)
  86. % subj decision:
  87. % p=4e-4
  88. %
  89. %% get cluster values
  90. clustertimes = stat.time(stat.negclusterslabelmat(2,:)==1);
  91. start_idx = find(stat.time==clustertimes(1));
  92. end_idx = find(stat.time==clustertimes(end));
  93. for si=1:numel(F1_if)
  94. ind_diff(si) = mean(F1_if{si}.avg(2, start_idx:end_idx))-mean(F2_if{si}.avg(2, start_idx:end_idx));
  95. end
  96. %% plot
  97. timevec = [-2:1/250:1.996];
  98. figure;
  99. plot(timevec, squeeze(nanmean(long_correct_if(:,4,:),1)))
  100. hold on;
  101. plot(timevec, squeeze(nanmean(short_correct_if(:,4,:),1)))
  102. xlim([-.5 1.8])
  103. %% burst detection
  104. addpath /project/3035003.01/JURIQUILLA/toolbox/SpectralEvents-master/SpectralEvents-master/
  105. tic
  106. clear
  107. src_data_folder = '/project/3015079.02/categorization EEG/elie/svs_data_500Hz/';
  108. src_data_files = dir(fullfile(src_data_folder, '*mat'));
  109. d=1
  110. for si = [1:numel(src_data_files)] % 7 is nan
  111. load([src_data_folder src_data_files(si).name])
  112. % cfg = [];
  113. % cfg.derivative = 'yes';
  114. % svs_data = ft_preprocessing(cfg, svs_data);
  115. trl = []; trl = svs_data.trialinfo;
  116. F1_trls = find(trl(:,3)==1 & trl(:,4)==1); % correct short
  117. F2_trls = find(trl(:,3)==2 & trl(:,4)==1); % correct long
  118. % min_trls = min(numel(F1_trls), numel(F2_trls));
  119. %
  120. % F1 = randsample(F1_trls, min_trls);
  121. % F2 = randsample(F2_trls, min_trls);
  122. cfg = [];
  123. cfg.latency = [0 2];
  124. cfg.channel = 2;
  125. %cfg.trials = [F1 F2];
  126. %cfg.avgoverchan = 'yes';
  127. data = ft_selectdata(cfg, svs_data);
  128. % update trl
  129. %trl = data.trialinfo;
  130. match = zeros(size(trl,1),1);
  131. match(trl(:,3)==1 & trl(:,4)==1)=1;
  132. match(trl(:,3)==2 & trl(:,4)==1)=2;
  133. % put data in time x trials matrix
  134. for ti = 1:numel(data.trial)
  135. x{d}(ti, :) = cell2mat(data.trial(ti));
  136. end
  137. x{d} = x{d}';
  138. % long vs short
  139. classLabels{d} = match; clear match
  140. %classLabels{1} = 1;
  141. d = d+1;
  142. end
  143. eventBand = [13,35]; % freq range of bursts
  144. fVec = 12:.5:36; % freqs for TFR
  145. Fs = 500; % sampling rate
  146. findMethod = 1;
  147. vis = false; % visualize
  148. [specEvents, TFRs, timeseries] = spectralevents(eventBand, fVec, Fs, findMethod, vis, x, classLabels);
  149. toc
  150. %% extract params
  151. for fi = 1:numel(specEvents)
  152. maxfreq_short(fi) = mean(specEvents(fi).Events.Events.maximafreq(specEvents(fi).Events.Events.classLabels==1));
  153. maxfreq_long(fi) = mean(specEvents(fi).Events.Events.maximafreq(specEvents(fi).Events.Events.classLabels==2));
  154. burstrate_short(fi) = sum(specEvents(fi).Events.Events.classLabels==1) / sum(specEvents(fi).TrialSummary.TrialSummary.classLabels==1);
  155. burstrate_long(fi) = sum(specEvents(fi).Events.Events.classLabels==2) / sum(specEvents(fi).TrialSummary.TrialSummary.classLabels==2);
  156. Fspan_short(fi) = mean(specEvents(fi).Events.Events.Fspan(specEvents(fi).Events.Events.classLabels==1));
  157. Fspan_long(fi) = mean(specEvents(fi).Events.Events.Fspan(specEvents(fi).Events.Events.classLabels==2));
  158. maxtiming_short(fi) = mean(specEvents(fi).Events.Events.maximatiming(specEvents(fi).Events.Events.classLabels==1));
  159. maxtiming_long(fi) = mean(specEvents(fi).Events.Events.maximatiming(specEvents(fi).Events.Events.classLabels==2));
  160. duration_short(fi) = mean(specEvents(fi).Events.Events.duration(specEvents(fi).Events.Events.classLabels==1));
  161. duration_long(fi) = mean(specEvents(fi).Events.Events.duration(specEvents(fi).Events.Events.classLabels==2));
  162. maxpow_short(fi) = mean(specEvents(fi).Events.Events.maximapower(specEvents(fi).Events.Events.classLabels==1));
  163. maxpow_long(fi) = mean(specEvents(fi).Events.Events.maximapower(specEvents(fi).Events.Events.classLabels==2));
  164. % numevents_short(fi) = mean(specEvents(fi).TrialSummary.TrialSummary.eventnumber(specEvents(fi).TrialSummary.TrialSummary.classLabels==1));
  165. % numevents_long(fi) = mean(specEvents(fi).TrialSummary.TrialSummary.eventnumber(specEvents(fi).TrialSummary.TrialSummary.classLabels==2));
  166. % this was same as burst rate
  167. end
  168. % maxfreq is significant with findMethod=1
  169. % even moreso with findMethod = 2 (T=4)
  170. % less so but stsill sig with method 3 (T=2.3, p=.03)
  171. % to report for revision
  172. % mean burst rate short 3.00 +/- .300 (T=48.9, p=0)
  173. % mean burst rate long 2.87 +/- .384 (T=36.7, p=0)
  174. %% tfr
  175. clear
  176. src_data_folder = '/project/3015079.02/categorization EEG/elie/svs_data/';
  177. src_data_files = dir(fullfile(src_data_folder, '*mat'));
  178. for fi = 1:numel(src_data_files)
  179. load([src_data_folder src_data_files(fi).name])
  180. trl = svs_data.trialinfo;
  181. trl = []; trl = svs_data.trialinfo;
  182. F1_trls = find(trl(:,3)==1 & trl(:,4)==1); % correct match
  183. F2_trls = find(trl(:,3)==2 & trl(:,4)==1); % correct mismatch
  184. min_trls = min(numel(F1_trls), numel(F2_trls));
  185. F1 = randsample(F1_trls, min_trls);
  186. F2 = randsample(F2_trls, min_trls);
  187. cfg = [];
  188. cfg.latency = [-.1 2];
  189. data = ft_selectdata(cfg, svs_data)
  190. cfg = [];
  191. cfg.method = 'wavelet';
  192. % cfg.output = 'fractal';
  193. % cfg.taper = 'hanning';
  194. cfg.foi = [4:36];
  195. cfg.pad = 3;
  196. cfg.toi = 0:.1:2;
  197. % cfg.t_ftimwin = ones(1, length(cfg.foi))*.4;
  198. cfg.channel = [1 2 3 4];
  199. cfg.keeptrials = 'yes';
  200. cfg.trials = F1; % select F1 mot trials
  201. F1_fft{fi} = ft_freqanalysis(cfg, data)
  202. F1_fft{fi}.powspctrm = log10(F1_fft{fi}.powspctrm);
  203. F1_fft{fi} = ft_freqdescriptives([], F1_fft{fi});
  204. cfg.trials = F2; % select F1 aud trials
  205. F2_fft{fi} = ft_freqanalysis(cfg, data)
  206. F2_fft{fi}.powspctrm = log10(F2_fft{fi}.powspctrm);
  207. F2_fft{fi} = ft_freqdescriptives([], F2_fft{fi});
  208. end
  209. % GA
  210. GAF1 = ft_freqgrandaverage([], F1_fft{:})
  211. GAF2 = ft_freqgrandaverage([], F2_fft{:})
  212. %% plt
  213. figure;
  214. plot(GAF1.freq, GAF1.powspctrm(4,:))
  215. hold on; plot(GAF2.freq, GAF2.powspctrm(4,:))
  216. %% stat
  217. % this way of making neighbours might not be working
  218. neighbours = [];
  219. label = GAF1.label;
  220. % neighbours(1).label = label{1};
  221. % neighbours(1).neighblabel = {[label{2}, '; ' label{3}, '; ' label{4}]};
  222. % neighbours(2).label = label{2};
  223. % neighbours(2).neighblabel = {[label{1}, '; ' label{3}, '; ' label{4}]};
  224. % neighbours(3).label = label{3};
  225. % neighbours(3).neighblabel = {[label{1}, '; ' label{2}, '; ' label{4}]};
  226. % neighbours(4).label = label{4};
  227. % neighbours(4).neighblabel = {[label{1}, '; ' label{2}, '; ' label{3}]};
  228. neighbours(1).label = label{1};
  229. neighbours(1).neighblabel = label(3);
  230. neighbours(2).label = label{2};
  231. neighbours(2).neighblabel = label(4);
  232. neighbours(3).label = label{3};
  233. neighbours(3).neighblabel = label(1);
  234. neighbours(4).label = label{4};
  235. neighbours(4).neighblabel = label(2);
  236. %
  237. cfg = [];
  238. cfg.method = 'montecarlo';
  239. cfg.statistic = 'depsamplesT';
  240. cfg.correctm = 'cluster';
  241. cfg.clusteralpha = 0.05;
  242. cfg.frequency = [13 35];
  243. cfg.latency = [0 2];
  244. cfg.clusterstatistic = 'maxsum';
  245. cfg.tail = 0; % -1, 1 or 0 (default = 0); one-sided or two-sided test
  246. cfg.clustertail = 0;
  247. cfg.alpha = 0.05; % alpha level of the permutation test
  248. cfg.numrandomization = 10000;
  249. % design
  250. ll = numel(F1_fft);
  251. design = [];
  252. design = repmat(1:ll, 1, 2);
  253. design(2,:) = [repmat(1, 1, ll) repmat(2, 1, ll)];
  254. cfg.design = design;
  255. cfg.ivar = 2;
  256. cfg.uvar = 1;
  257. cfg.neighbours = neighbours;
  258. %cfg.channel = 5;
  259. stat = ft_freqstatistics(cfg, F1_fft{:}, F2_fft{:})
  260. %% plot stat
  261. poscluster = stat.posclusterslabelmat==1;
  262. negcluster = stat.negclusterslabelmat==1;
  263. figure; imagesc(stat.time, stat.freq, squeeze(poscluster(2,:,:))); axis xy
  264. figure; imagesc(stat.time, stat.freq, squeeze(negcluster(4,:,:))); axis xy
  265. %% decoding
  266. clear
  267. addpath /project/3035003.01/MVPA-Light-master/startup
  268. startup_MVPA_Light
  269. load('/project/3015079.02/categorization EEG/elie/inst_freq_sens/instfreq_decdelay.mat')
  270. for fi = 1:numel(decdelay_instfreq)
  271. % load dataset from 1 subj to try
  272. trl = []; trl = decdelay_instfreq{fi}.trialinfo;
  273. F1_trls = find(trl(:,3)==1 & trl(:,4)==1); % correct short
  274. F2_trls = find(trl(:,3)==2 & trl(:,4)==1); % correct long
  275. cfg = [];
  276. cfg.latency = [-.4 1.9];
  277. cfg.trials = F1_trls;
  278. data_F1 = ft_selectdata(cfg, decdelay_instfreq{fi})
  279. cfg.trials = F2_trls;
  280. data_F2 = ft_selectdata(cfg, decdelay_instfreq{fi})
  281. cfg = [];
  282. cfg.method = 'mvpa';
  283. cfg.features = 'chan';
  284. %cfg.features = [];
  285. cfg.mvpa.classifier = 'lda'; % or lda
  286. cfg.mvpa.metric = 'auc';
  287. cfg.mvpa.k = 8;
  288. cfg.mvpa.repeat = 2;
  289. %cfg.neighbours = neighbours;
  290. cfg.design = [ones(numel(F1_trls),1); 2*ones(numel(F2_trls),1)];
  291. cfg.mvpa.preprocess = 'zscore';
  292. statx{fi} = ft_timelockstatistics(cfg, data_F1, data_F2)
  293. fi
  294. end
  295. %% average the stat?
  296. % below chance ! -> do on sens level (it works there)
  297. for fi = 1:24
  298. auc(fi, :) = statx{fi}.auc;
  299. end
  300. figure; plot(statx{1}.time, smooth(mean(auc), 7))
  301. %% do we see freqshift on the fft spectra?
  302. clear
  303. folder = '/project/3015079.02/categorization EEG/elie/svs_data_dec_2.5/';
  304. files = dir(fullfile(folder, '*mat'))
  305. for fi = 1:numel(files)
  306. load([folder files(fi).name])
  307. trl = []; trl = svs_data.trialinfo;
  308. F1_trls = find(trl(:,3)==1 & trl(:,4)==1); % correct short
  309. F2_trls = find(trl(:,3)==2 & trl(:,4)==1);
  310. min_trls = min(numel(F1_trls), numel(F2_trls));
  311. F1 = randsample(F1_trls, min_trls);
  312. F2 = randsample(F2_trls, min_trls);
  313. cfg = [];
  314. cfg.derivative = 'yes';
  315. svs_data = ft_preprocessing(cfg, svs_data)
  316. cfg = [];
  317. cfg.method = 'mtmfft';
  318. cfg.taper = 'hanning';
  319. % cfg.output = 'fooof_peaks';
  320. % cfg.taper = 'dpss';
  321. % cfg.tapsmofrq = 2;
  322. cfg.pad = 4;
  323. cfg.foilim = [8 35];
  324. cfg.trials = F1;
  325. fft_short{fi} = ft_freqanalysis(cfg, svs_data)
  326. cfg.trials = F2;
  327. fft_long{fi} = ft_freqanalysis(cfg, svs_data)
  328. end
  329. %% GA
  330. GA_short = ft_freqgrandaverage([], fft_short{:})
  331. GA_long = ft_freqgrandaverage([], fft_long{:})
  332. %% plot
  333. figure; plot(GA_short.freq, GA_short.powspctrm(2,:))
  334. hold on; plot(GA_long.freq, GA_long.powspctrm(2,:))
  335. xlim([8 35])

exp1_freqshift.m, no license · at the source

Overview

Authors: Elie Rassi1,2, Julio Rodriguez-Larios3, Camille Gret1, Hugo Merchant4, Alma Elshafei1, Saskia Haegens1,5,6
ORCID iDs: Elie Rassi
  1. Donders Institute for Brain, Cognition, and Behaviour, Radboud University, Nijmegen, the Netherlands
  2. Department of Psychology and Centre for Cognitive Neuroscience, University of Salzburg, Salzburg, Austria
  3. Brunel University of London, London, UK
  4. Instituto de Neurobiología, UNAM, Campus Juriquilla, Queretaro, Mexico
  5. Department of Psychiatry, Columbia University, New York, NY, USA
  6. Division of Systems Neuroscience, New York State Psychiatric Institute, New York, NY, USA
Journal: n/a, volume 28, issue 11, article 113806
Dates: received 11 April 2025; accepted 15 October 2025; published online 17 October 2025
Type: Research article · Language: English
License: none stated
Identifiers: DOI 10.1016/j.isci.2025.113806 · PMCID PMC12629917 · OpenAlex W4415328298
Open access: gold, a free copy (OpenAlex)
Status: code verified
Categories: human (organism)
Methods: Spectral & time-frequency, Preprocessing, Connectivity, Statistics, Smoothing, state filtering, decompositions, Machine learning, Physiology & signal measures
Keywords: Natural sciences, Biological sciences, Neuroscience, Clinical neuroscience
Topic: Neural dynamics and brain function (Cognitive Neuroscience, Neuroscience), according to OpenAlex
Funding: Austrian Science; Erwin Schrödinger Fellowship (J4580); Consejo Nacional de Humanidades (R01 MH123679); Ciencia y Tecnología (CBF-2025-G-89); UNAM-DGAPA PAPIIT (IG200424); Nederlandse Organisatie voor Wetenschappelijk Onderzoek; NIH; NSF (CRCNS 2424100)
Citations: cited by 2 papers (Europe PMC); 57 references in the paper

Abstract

The abstract is not reproduced here: the paper's license (none stated) does not allow it. Read it in the paper, at the publisher or on Europe PMC.

Repository

Its files are read in the Code ↔ Paper reader above, with 1 match between paragraphs and lines of code.

OSF a5m7q

License: none: the authors keep all their rights
State: the link answers, verified on 26 September 2026
Evidence: files inventoried
Languages: MATLAB (3)
Size: 6 files, 3 scripts
Software Heritage: not checked
Found in: “Data and code availability”
Not found: README, license file, CITATION.cff, environment file, tests, continuous integration, documentation
Availability: 1 check, the latest on 26 September 2026: the link answers (HTTP 200)
  • 26 September 2026: the link answers (HTTP 200)
3 files
At the source: osf.io/a5m7q/

The paper's code and data availability statement is in the Data section.

Tracing map

Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.

What the map holds:

  • 1 repository of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
  • 3 scripts, each with its path and the digest of its content;
  • 1 match between paragraphs of the paper and lines of the code (method lexical-v1);
  • neither the text of the paper nor the code itself.

Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.

Data

No dataset and no data link were found in the paper.

Code and data availability statement

The paper has a code and data availability statement. Its license (none stated) does not allow reproducing it here; in short, from what the harvester recognized in it:

  • it points to the authors' code: OSF a5m7q
  • it says that the data are available on request
  • it says that the code is available on request

Read it in the paper: doi.org/10.1016/j.isci.2025.113806.

Versions

The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.

Version 1, 27 September 2026: the first record

Recorded: type, language, journal, volume, issue, pages, dates, 6 authors, 4 keywords, 8 funders, 57 references.

Cite

This paper

Rassi, E., Rodriguez-Larios, J., Gret, C., Merchant, H., Elshafei, A., & Haegens, S. (2025). Beta-band frequency shifts signal decisions in human prefrontal cortex. iScience, 28(11), 113806. https://doi.org/10.1016/j.isci.2025.113806

BibTeX

@article{rassi2025beta,
author = {Rassi, Elie and Rodriguez-Larios, Julio and Gret, Camille and Merchant, Hugo and Elshafei, Alma and Haegens, Saskia},
title = {{Beta-band frequency shifts signal decisions in human prefrontal cortex}},
journal = {iScience},
year = {2025},
volume = {28},
number = {11},
pages = {113806},
publisher = {Elsevier},
issn = {2589-0042},
doi = {10.1016/j.isci.2025.113806},
url = {https://doi.org/10.1016/j.isci.2025.113806},
pmcid = {PMC12629917}
}

RIS

TY - JOUR
AU - Rassi, Elie
AU - Rodriguez-Larios, Julio
AU - Gret, Camille
AU - Merchant, Hugo
AU - Elshafei, Alma
AU - Haegens, Saskia
TI - Beta-band frequency shifts signal decisions in human prefrontal cortex
T2 - iScience
J2 - iScience
PY - 2025
DA - 2025
VL - 28
IS - 11
SP - 113806
SN - 2589-0042
PB - Elsevier
DO - 10.1016/j.isci.2025.113806
UR - https://doi.org/10.1016/j.isci.2025.113806
LA - en
ER -

CSL-JSON

{
"id": "10.1016/j.isci.2025.113806",
"type": "article-journal",
"title": "Beta-band frequency shifts signal decisions in human prefrontal cortex",
"container-title": "iScience",
"author": [
{
"family": "Rassi",
"given": "Elie"
},
{
"family": "Rodriguez-Larios",
"given": "Julio"
},
{
"family": "Gret",
"given": "Camille"
},
{
"family": "Merchant",
"given": "Hugo"
},
{
"family": "Elshafei",
"given": "Alma"
},
{
"family": "Haegens",
"given": "Saskia"
}
],
"container-title-short": "iScience",
"volume": "28",
"issue": "11",
"page": "113806",
"DOI": "10.1016/j.isci.2025.113806",
"PMCID": "PMC12629917",
"ISSN": "2589-0042",
"publisher": "Elsevier",
"URL": "https://doi.org/10.1016/j.isci.2025.113806",
"language": "en",
"issued": {
"date-parts": [
[
2025
]
]
}
}

The tracing map gets a citation of its own once an author has validated it and it has a DOI.

Similar papers

The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.

[1] doi:10.1162/imag.a.1335 [code]
Functionally distinct alpha components are differentially modulated by attention and affect behavior.
Journal: Imaging neuroscience (Cambridge, Mass.)
In common: FieldTrip, 8 references, author Elie Rassi
[2] doi:10.1038/s41598-025-08037-8 [code]
OPM-MEG reveals dynamics of beta bursts underlying attentional processes in sensory cortex
Journal: n/a
In common: 9 references
[3] doi:10.1016/j.isci.2026.115375 [code]
Bursts of regional cortical inhibition during smartphone use.
Journal: iScience
In common: Statistics and Machine Learning Toolbox, 8 references
[4] doi:10.1371/journal.pbio.3003938 [code]
Theta oscillations tag episodic memories for sleep-dependent consolidation.
Journal: PLoS biology
In common: shadedErrorBar, FieldTrip, Statistics and Machine Learning Toolbox, 4 references
[5] doi:10.1038/s41467-026-70124-9 [code]
Alpha frequency shapes perceptual sensitivity by modulating optimal phase likelihood.
Journal: Nature communications
In common: Statistics and Machine Learning Toolbox, 6 references
[6] doi:10.1093/braincomms/fcag043 [code]
Linking movement-related beta oscillations to cortical excitability, structural damage, and fatigue in multiple sclerosis.
Journal: Brain communications
In common: FieldTrip, Statistics and Machine Learning Toolbox, 6 references
[7] doi:10.1523/eneuro.0316-25.2026 [code]
Neural Mechanisms of Self-Generated Action Sequences.
Journal: eNeuro
In common: FieldTrip, Statistics and Machine Learning Toolbox, 5 references
[8] doi:10.64898/2026.03.06.710026 [code]
Distinct beta burst motifs exhibit opposing error relationships during motor adaptation
Journal: bioRxiv (preprint)
In common: FieldTrip, Statistics and Machine Learning Toolbox, 4 references
[9] doi:10.1038/s41467-026-75799-8 [code]
Behaviourally driven closed-loop beta-tACS enhances beta activity and motor behaviour.
Journal: Nature communications
In common: FieldTrip, Statistics and Machine Learning Toolbox, 5 references
[10] doi:10.1126/sciadv.aea3919 [code]
Hierarchical brain dynamics supporting visual perceptual transitions.
Journal: Science advances
In common: Statistics and Machine Learning Toolbox, 4 references

Contribute

The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.

Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.

Request its removal

To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).

Discussion, reproductions, activity

Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.

Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.

Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.