Files
Experiments DB Dev 8a18c894dd feat(matlab): add Satterthwaite DF + honest random-slope test to LME reports
Every fitlme-based report (lme_*, paper_*, phase_*, and the variations'
analyze.m) now shows, per effect: residual-DF p, Satterthwaite-DF p, and --
for the interaction -- an HONEST test from a per-animal random-SLOPE model
(day|rat), whose Satterthwaite DF collapses toward the animal count.

New: tdcs_random_slope_interaction.m (shared helper). Wired into tdcs_lme,
tdcs_paper_lme, tdcs_phase_lme, variation_analyze; SUMMARY.csv gains
interaction_p_satt / interaction_p_rs. Regenerated all results/, variations/,
matched-effort outputs.

Key point this surfaces: Satterthwaite ~= residual on the random-INTERCEPT
model (the slope's error is at session level), so it does NOT fix
pseudoreplication; the random-slope model does. Effect: full-range mergeA2
interaction 0.009 -> 0.75 (collapses); unmerge_d0_5 0.015 -> 0.13 (n.s.);
the pooled-control early windows survive honestly (naive_a2_d0_5 0.001 ->
0.028; naive_boxa_d0_5 0.003 -> 0.036). Suite 42/42.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-22 15:45:19 -04:00

158 lines
5.7 KiB
Plaintext

==============================================================================
PHASED days x tDCS LME -- mergeB2 (Box-B2 vs Box-A2)
==============================================================================
model per phase: success ~ dayp*tDCS + (1|subject) [dayp = day - phaseStart]
phase N A2slp B2slp day p tDCS p intP(res) intP(Satt) intP(RS) slopeDiff [95% CI]
--------------------------------------------------------------------------------------------------------
0-5 8 9.86 14.65 2.9e-08 0.399 0.013 0.013 0.088 +4.79 [+1.06,+8.53]
6-10 7 2.40 4.80 0.18 0.142 0.253 0.254 0.328 +2.40 [-1.80,+6.60]
6-13 7 1.71 4.42 0.083 0.127 0.018 0.018 0.024 +2.71 [+0.50,+4.93]
Columns: intP(res)=observation-level DF (anticonservative); intP(Satt)=Satterthwaite
DF (~= residual on this random-intercept model); intP(RS)=per-animal random-slope
(dayp|subject) model, the honest test (DF collapses toward the animal count; 'n/a' if it
did not converge). The early phase carries the Box-B2 faster-acquisition signal; late
phases converge.
==============================================================================
FULL MODEL SUMMARY -- phase 0-5: success ~ dayp*tDCS + (1|subject)
==============================================================================
Linear mixed-effects model fit by ML
Model information:
Number of observations 48
Fixed effects coefficients 4
Random effects coefficients 8
Covariance parameters 2
Formula:
success ~ 1 + dayp*tDCS + (1 | subject)
Model fit statistics:
AIC BIC LogLikelihood Deviance
383.06 394.29 -185.53 371.06
Fixed effects coefficients (95% CIs):
Name Estimate SE tStat DF pValue
{'(Intercept)'} 12.524 5.5254 2.2666 44 0.028385
{'dayp' } 9.8571 1.4654 6.7268 44 2.8783e-08
{'tDCS' } -5.9524 6.9892 -0.85166 44 0.39902
{'dayp:tDCS' } 4.7943 1.8536 2.5865 44 0.013079
Lower Upper
1.3881 23.66
6.9039 12.81
-20.038 8.1334
1.0587 8.5299
Random effects covariance parameters (95% CIs):
Group: subject (8 Levels)
Name1 Name2 Type Estimate
{'(Intercept)'} {'(Intercept)'} {'std'} 5.7044
Lower Upper
2.6066 12.484
Group: Error
Name Estimate Lower Upper
{'Res Std'} 10.618 8.5282 13.219
==============================================================================
FULL MODEL SUMMARY -- phase 6-10: success ~ dayp*tDCS + (1|subject)
==============================================================================
Linear mixed-effects model fit by ML
Model information:
Number of observations 35
Fixed effects coefficients 4
Random effects coefficients 7
Covariance parameters 2
Formula:
success ~ 1 + dayp*tDCS + (1 | subject)
Model fit statistics:
AIC BIC LogLikelihood Deviance
264.22 273.56 -126.11 252.22
Fixed effects coefficients (95% CIs):
Name Estimate SE tStat DF pValue
{'(Intercept)'} 74.2 5.8956 12.586 31 1.0133e-13
{'dayp' } 2.4 1.7415 1.3781 31 0.17803
{'tDCS' } 10.52 6.9757 1.5081 31 0.14166
{'dayp:tDCS' } 2.4 2.0606 1.1647 31 0.25302
Lower Upper
62.176 86.224
-1.1518 5.9518
-3.7071 24.747
-1.8026 6.6026
Random effects covariance parameters (95% CIs):
Group: subject (7 Levels)
Name1 Name2 Type Estimate
{'(Intercept)'} {'(Intercept)'} {'std'} 5.7551
Lower Upper
2.7955 11.848
Group: Error
Name Estimate Lower Upper
{'Res Std'} 7.7883 5.9937 10.12
==============================================================================
FULL MODEL SUMMARY -- phase 6-13: success ~ dayp*tDCS + (1|subject)
==============================================================================
Linear mixed-effects model fit by ML
Model information:
Number of observations 50
Fixed effects coefficients 4
Random effects coefficients 7
Covariance parameters 2
Formula:
success ~ 1 + dayp*tDCS + (1 | subject)
Model fit statistics:
AIC BIC LogLikelihood Deviance
362.57 374.04 -175.28 350.57
Fixed effects coefficients (95% CIs):
Name Estimate SE tStat DF pValue
{'(Intercept)'} 75.168 5.6188 13.378 46 1.8212e-17
{'dayp' } 1.712 0.96716 1.7701 46 0.083338
{'tDCS' } 10.291 6.6299 1.5522 46 0.12747
{'dayp:tDCS' } 2.7116 1.1009 2.4631 46 0.017575
Lower Upper
63.858 86.478
-0.23482 3.6588
-3.0544 23.636
0.49565 4.9275
Random effects covariance parameters (95% CIs):
Group: subject (7 Levels)
Name1 Name2 Type Estimate
{'(Intercept)'} {'(Intercept)'} {'std'} 6.379
Lower Upper
3.4793 11.695
Group: Error
Name Estimate Lower Upper
{'Res Std'} 7.0508 5.7111 8.7047