diff --git a/analysis/matlab/tdcs_lme.m b/analysis/matlab/tdcs_lme.m index 1ba3b6d..daef865 100644 --- a/analysis/matlab/tdcs_lme.m +++ b/analysis/matlab/tdcs_lme.m @@ -8,8 +8,11 @@ function L = tdcs_lme(S, cfg) % % replicating the published formulation (a linear mixed-effects model for the % number of successful reaches with a days x tDCS interaction, a main effect -% of days, and a main effect of tDCS). `day` is used raw (not centered), so -% the tDCS main effect is the group difference on the first day ("Day 1"). +% of days, and a main effect of tDCS). `day` is raw and 0-indexed, and OUR +% day 0 corresponds to the paper's "Day 1", so the tDCS main effect is the +% group difference on Day 1 -- directly comparable to the paper's "equal on +% Day 1" test. (Do not re-index day to 1-based: that would move the main +% effect's evaluation point off Day 1.) % % L fields: % .lme the LinearMixedModel object diff --git a/analysis/matlab/tdcs_lme_report.m b/analysis/matlab/tdcs_lme_report.m index e399025..14401aa 100644 --- a/analysis/matlab/tdcs_lme_report.m +++ b/analysis/matlab/tdcs_lme_report.m @@ -11,14 +11,15 @@ s = [s sprintf('LINEAR MIXED MODEL (days x tDCS) -- scenario: %s\n', scenario)]; s = [s sprintf('%s\n', bar)]; s = [s sprintf('model: success ~ day * tDCS + (1|subject) [tDCS: %s = 1 vs %s = 0]\n', ... cfg.anchorHigh, cfg.anchorLow)]; -s = [s sprintf('N = %d subjects, %d sessions (day used raw: tDCS main = first-day difference)\n\n', ... - L.nSubjects, L.nObs)]; +s = [s sprintf('N = %d subjects, %d sessions\n', L.nSubjects, L.nObs)]; +s = [s sprintf('(day is raw and 0-indexed: our day 0 = the paper''s "Day 1", so the tDCS\n')]; +s = [s sprintf(' main effect below is the group difference on Day 1 -- comparable to the paper.)\n\n')]; s = [s sprintf('%-27s %-14s %-13s %s\n', 'effect', 't (df)', 'F (df1)', 'p')]; s = [s sprintf('%s\n', repmat('-', 1, 70))]; s = [s localRow('days x tDCS (interaction)', L.interaction)]; s = [s localRow('days (learning)', L.day)]; -s = [s localRow('tDCS (main, at day 0)', L.tDCS)]; +s = [s localRow('tDCS (main, at Day 1)', L.tDCS)]; s = [s sprintf('\nINTERPRETATION\n')]; if L.interaction.p >= 0.05 @@ -32,9 +33,9 @@ s = [s sprintf(' - days x tDCS interaction: %s (p=%.4f, slope diff=%.2f) -> %s. localSig(L.interaction.p), L.interaction.p, L.interaction.estimate, interTxt)]; s = [s sprintf(' - days (learning): %s (p=%.2g) -> performance improves with training.\n', ... localSig(L.day.p), L.day.p)]; -s = [s sprintf(' - tDCS main effect at day 0: %s (p=%.4f) -> the groups %s on the first day.\n', ... +s = [s sprintf(' - tDCS main effect on Day 1 (our day 0): %s (p=%.4f) -> the groups %s on Day 1.\n', ... localSig(L.tDCS.p), L.tDCS.p, ... - localPick(L.tDCS.p < 0.05, 'already DIFFER', 'are comparable'))]; + localPick(L.tDCS.p < 0.05, 'already DIFFER', 'are comparable (as in the paper)'))]; s = [s sprintf('\nPaper reference (N=24): interaction t(227)=2.68, F(1)=7.12, p=0.008;\n')]; s = [s sprintf(' days t(227)=9.64, F(1)=267.64, p=1.2e-18; tDCS t(227)=0.23, F(1)=0.053, p=0.81.\n')];