feat(matlab): windowed paper-LME replication for mergeNaive (d0_10, d0_13)

Make tdcs_paper_lme window-aware (windowKey 'full'|'d0_10'|'d0_13',
default 'full' -> unchanged filename). Windowed runs give the two anchor
arms equal day coverage, so the stim:day interaction is not confounded by
the full-range coverage imbalance; the report now states whether coverage
is equal and adds an INTERPRETATION block. Add switch cases
paper_mergeNaive_d0_10 / _d0_13 and include them in run_all.

Finding: unlike mergeA2 (fair-window interaction n.s.), the pooled-naive
control keeps the interaction significant in the fair d0_13 window
(F(1)=7.07, p=0.0088, +1.80 [+0.46,+3.14]; equal on Day 1 p=0.20),
reproducing the paper without the coverage confound; d0_10 is borderline
(p=0.051).

Tests: tLme asserts equal coverage / no warning / one full summary for
both windows and a significant positive d0_13 interaction; bad windowKey
errors. Suite 41/41.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Experiments DB Dev
2026-07-20 17:49:09 -04:00
parent 0e9263b958
commit 963fd889b2
9 changed files with 532 additions and 16 deletions
@@ -0,0 +1,127 @@
subject,group,day,success,total,day_c,day_c2
Banh-mi-1,Electrode-Box-B2,0,13,84,-4.92063492063492,24.2126480221718
Banh-mi-1,Electrode-Box-B2,1,35,86,-3.92063492063492,15.371378180902
Banh-mi-1,Electrode-Box-B2,2,47,110,-2.92063492063492,8.53010833963215
Banh-mi-1,Electrode-Box-B2,3,65,140,-1.92063492063492,3.68883849836231
Banh-mi-1,Electrode-Box-B2,4,70,127,-0.920634920634921,0.847568657092467
Banh-mi-1,Electrode-Box-B2,5,102,142,0.0793650793650791,0.0062988158226253
Banh-mi-1,Electrode-Box-B2,6,90,131,1.07936507936508,1.16502897455278
Banh-mi-1,Electrode-Box-B2,7,109,148,2.07936507936508,4.32375913328294
Banh-mi-1,Electrode-Box-B2,8,104,137,3.07936507936508,9.4824892920131
Banh-mi-1,Electrode-Box-B2,9,119,150,4.07936507936508,16.6412194507433
Banh-mi-1,Electrode-Box-B2,10,121,158,5.07936507936508,25.7999496094734
Banh-mi-2,Electrode-Box-A2,0,25,97,-4.92063492063492,24.2126480221718
Banh-mi-2,Electrode-Box-A2,1,22,101,-3.92063492063492,15.371378180902
Banh-mi-2,Electrode-Box-A2,2,22,119,-2.92063492063492,8.53010833963215
Banh-mi-2,Electrode-Box-A2,3,29,118,-1.92063492063492,3.68883849836231
Banh-mi-2,Electrode-Box-A2,4,27,136,-0.920634920634921,0.847568657092467
Banh-mi-2,Electrode-Box-A2,5,43,146,0.0793650793650791,0.0062988158226253
Banh-mi-2,Electrode-Box-A2,6,74,146,1.07936507936508,1.16502897455278
Banh-mi-2,Electrode-Box-A2,7,70,148,2.07936507936508,4.32375913328294
Banh-mi-2,Electrode-Box-A2,8,65,130,3.07936507936508,9.4824892920131
Banh-mi-2,Electrode-Box-A2,9,79,151,4.07936507936508,16.6412194507433
Banh-mi-2,Electrode-Box-A2,10,93,152,5.07936507936508,25.7999496094734
Egg-tart-1,Electrode-Box-B2,0,7,56,-4.92063492063492,24.2126480221718
Egg-tart-1,Electrode-Box-B2,1,16,78,-3.92063492063492,15.371378180902
Egg-tart-1,Electrode-Box-B2,2,23,103,-2.92063492063492,8.53010833963215
Egg-tart-1,Electrode-Box-B2,3,63,120,-1.92063492063492,3.68883849836231
Egg-tart-1,Electrode-Box-B2,4,69,132,-0.920634920634921,0.847568657092467
Egg-tart-1,Electrode-Box-B2,5,83,136,0.0793650793650791,0.0062988158226253
Egg-tart-1,Electrode-Box-B2,6,71,142,1.07936507936508,1.16502897455278
Egg-tart-1,Electrode-Box-B2,7,79,138,2.07936507936508,4.32375913328294
Egg-tart-1,Electrode-Box-B2,8,98,142,3.07936507936508,9.4824892920131
Egg-tart-1,Electrode-Box-B2,9,89,139,4.07936507936508,16.6412194507433
Egg-tart-1,Electrode-Box-B2,10,96,143,5.07936507936508,25.7999496094734
Egg-tart-2,Electrode-Box-A2,0,9,32,-4.92063492063492,24.2126480221718
Egg-tart-2,Electrode-Box-A2,1,2,38,-3.92063492063492,15.371378180902
Egg-tart-2,Electrode-Box-A2,2,31,93,-2.92063492063492,8.53010833963215
Egg-tart-2,Electrode-Box-A2,3,44,101,-1.92063492063492,3.68883849836231
Egg-tart-2,Electrode-Box-A2,4,54,131,-0.920634920634921,0.847568657092467
Egg-tart-2,Electrode-Box-A2,5,84,139,0.0793650793650791,0.0062988158226253
Egg-tart-2,Electrode-Box-A2,6,85,145,1.07936507936508,1.16502897455278
Egg-tart-2,Electrode-Box-A2,7,79,143,2.07936507936508,4.32375913328294
Egg-tart-2,Electrode-Box-A2,8,76,131,3.07936507936508,9.4824892920131
Egg-tart-2,Electrode-Box-A2,9,88,149,4.07936507936508,16.6412194507433
Egg-tart-2,Electrode-Box-A2,10,81,151,5.07936507936508,25.7999496094734
Khoai-lang-1,Electrode-Box-B2,0,3,69,-4.92063492063492,24.2126480221718
Khoai-lang-1,Electrode-Box-B2,1,18,97,-3.92063492063492,15.371378180902
Khoai-lang-1,Electrode-Box-B2,2,27,84,-2.92063492063492,8.53010833963215
Khoai-lang-1,Electrode-Box-B2,3,46,121,-1.92063492063492,3.68883849836231
Khoai-lang-1,Electrode-Box-B2,4,65,143,-0.920634920634921,0.847568657092467
Khoai-lang-1,Electrode-Box-B2,5,76,141,0.0793650793650791,0.0062988158226253
Khoai-lang-1,Electrode-Box-B2,6,79,146,1.07936507936508,1.16502897455278
Khoai-lang-1,Electrode-Box-B2,7,81,153,2.07936507936508,4.32375913328294
Khoai-lang-1,Electrode-Box-B2,8,98,144,3.07936507936508,9.4824892920131
Khoai-lang-1,Electrode-Box-B2,9,101,149,4.07936507936508,16.6412194507433
Khoai-lang-1,Electrode-Box-B2,10,103,150,5.07936507936508,25.7999496094734
Khoai-lang-2,Electrode-Box-A2,0,0,0,-4.92063492063492,24.2126480221718
Khoai-lang-2,Electrode-Box-A2,1,0,0,-3.92063492063492,15.371378180902
Khoai-lang-2,Electrode-Box-A2,2,10,47,-2.92063492063492,8.53010833963215
Khoai-lang-2,Electrode-Box-A2,3,11,52,-1.92063492063492,3.68883849836231
Khoai-lang-2,Electrode-Box-A2,4,9,56,-0.920634920634921,0.847568657092467
Khoai-lang-2,Electrode-Box-A2,5,34,95,0.0793650793650791,0.0062988158226253
Khoai-lang-2,Electrode-Box-A2,6,21,72,1.07936507936508,1.16502897455278
Khoai-lang-2,Electrode-Box-A2,7,23,99,2.07936507936508,4.32375913328294
Khoai-lang-2,Electrode-Box-A2,8,64,136,3.07936507936508,9.4824892920131
Khoai-lang-2,Electrode-Box-A2,9,75,131,4.07936507936508,16.6412194507433
Khoai-lang-2,Electrode-Box-A2,10,63,134,5.07936507936508,25.7999496094734
Khoai-tay-1,Electrode-Box-A,0,14,62,-4.92063492063492,24.2126480221718
Khoai-tay-1,Electrode-Box-A,1,22,83,-3.92063492063492,15.371378180902
Khoai-tay-1,Electrode-Box-A,2,6,79,-2.92063492063492,8.53010833963215
Khoai-tay-1,Electrode-Box-A,3,28,97,-1.92063492063492,3.68883849836231
Khoai-tay-1,Electrode-Box-A,4,60,134,-0.920634920634921,0.847568657092467
Khoai-tay-1,Electrode-Box-A,5,75,138,0.0793650793650791,0.0062988158226253
Khoai-tay-1,Electrode-Box-A,6,81,137,1.07936507936508,1.16502897455278
Khoai-tay-1,Electrode-Box-A,7,78,147,2.07936507936508,4.32375913328294
Khoai-tay-1,Electrode-Box-A,8,91,132,3.07936507936508,9.4824892920131
Khoai-tay-1,Electrode-Box-A,9,99,146,4.07936507936508,16.6412194507433
Khoai-tay-1,Electrode-Box-A,10,94,143,5.07936507936508,25.7999496094734
Khoai-tay-2,Electrode-Box-A2,1,21,68,-3.92063492063492,15.371378180902
Khoai-tay-2,Electrode-Box-A2,2,6,79,-2.92063492063492,8.53010833963215
Khoai-tay-2,Electrode-Box-A2,3,0,83,-1.92063492063492,3.68883849836231
Khoai-tay-2,Electrode-Box-A2,4,28,87,-0.920634920634921,0.847568657092467
Khoai-tay-2,Electrode-Box-A2,5,31,125,0.0793650793650791,0.0062988158226253
Khoai-tay-2,Electrode-Box-A2,6,62,144,1.07936507936508,1.16502897455278
Khoai-tay-2,Electrode-Box-A2,7,87,141,2.07936507936508,4.32375913328294
Khoai-tay-2,Electrode-Box-A2,8,105,152,3.07936507936508,9.4824892920131
Khoai-tay-2,Electrode-Box-A2,9,75,148,4.07936507936508,16.6412194507433
Khoai-tay-2,Electrode-Box-A2,10,101,149,5.07936507936508,25.7999496094734
OM-2,Electrode-Box-A2,0,1,7,-4.92063492063492,24.2126480221718
OM-2,Electrode-Box-A2,1,11,33,-3.92063492063492,15.371378180902
OM-2,Electrode-Box-A2,2,19,62,-2.92063492063492,8.53010833963215
OM-2,Electrode-Box-A2,3,29,117,-1.92063492063492,3.68883849836231
OM-2,Electrode-Box-A2,4,73,126,-0.920634920634921,0.847568657092467
OM-2,Electrode-Box-A2,5,53,135,0.0793650793650791,0.0062988158226253
OM-2,Electrode-Box-A2,6,73,138,1.07936507936508,1.16502897455278
OM-2,Electrode-Box-A2,7,80,131,2.07936507936508,4.32375913328294
OM-2,Electrode-Box-A2,8,91,141,3.07936507936508,9.4824892920131
OM-2,Electrode-Box-A2,9,90,135,4.07936507936508,16.6412194507433
OM-2,Electrode-Box-A2,10,95,142,5.07936507936508,25.7999496094734
Root-beer-1,Electrode-Box-B2,0,11,85,-4.92063492063492,24.2126480221718
Root-beer-1,Electrode-Box-B2,1,18,76,-3.92063492063492,15.371378180902
Root-beer-1,Electrode-Box-B2,2,40,105,-2.92063492063492,8.53010833963215
Root-beer-1,Electrode-Box-B2,3,55,134,-1.92063492063492,3.68883849836231
Root-beer-1,Electrode-Box-B2,4,75,136,-0.920634920634921,0.847568657092467
Root-beer-1,Electrode-Box-B2,5,64,133,0.0793650793650791,0.0062988158226253
Root-beer-1,Electrode-Box-B2,6,104,139,1.07936507936508,1.16502897455278
Root-beer-1,Electrode-Box-B2,7,98,148,2.07936507936508,4.32375913328294
Root-beer-1,Electrode-Box-B2,8,81,145,3.07936507936508,9.4824892920131
Root-beer-1,Electrode-Box-B2,9,89,156,4.07936507936508,16.6412194507433
Root-beer-1,Electrode-Box-B2,10,105,158,5.07936507936508,25.7999496094734
Root-beer-2,Electrode-Box-A2,0,22,74,-4.92063492063492,24.2126480221718
Root-beer-2,Electrode-Box-A2,1,31,87,-3.92063492063492,15.371378180902
Root-beer-2,Electrode-Box-A2,2,49,134,-2.92063492063492,8.53010833963215
Root-beer-2,Electrode-Box-A2,3,31,89,-1.92063492063492,3.68883849836231
Root-beer-2,Electrode-Box-A2,4,60,140,-0.920634920634921,0.847568657092467
Root-beer-2,Electrode-Box-A2,5,84,147,0.0793650793650791,0.0062988158226253
Vu-vuong,Electrode-Box-A2,0,18,61,-4.92063492063492,24.2126480221718
Vu-vuong,Electrode-Box-A2,1,35,91,-3.92063492063492,15.371378180902
Vu-vuong,Electrode-Box-A2,2,61,127,-2.92063492063492,8.53010833963215
Vu-vuong,Electrode-Box-A2,3,34,146,-1.92063492063492,3.68883849836231
Vu-vuong,Electrode-Box-A2,4,61,141,-0.920634920634921,0.847568657092467
Vu-vuong,Electrode-Box-A2,5,37,151,0.0793650793650791,0.0062988158226253
Vu-vuong,Electrode-Box-A2,6,49,131,1.07936507936508,1.16502897455278
Vu-vuong,Electrode-Box-A2,7,65,149,2.07936507936508,4.32375913328294
Vu-vuong,Electrode-Box-A2,8,67,141,3.07936507936508,9.4824892920131
Vu-vuong,Electrode-Box-A2,9,73,140,4.07936507936508,16.6412194507433
Vu-vuong,Electrode-Box-A2,10,72,131,5.07936507936508,25.7999496094734
1 subject group day success total day_c day_c2
2 Banh-mi-1 Electrode-Box-B2 0 13 84 -4.92063492063492 24.2126480221718
3 Banh-mi-1 Electrode-Box-B2 1 35 86 -3.92063492063492 15.371378180902
4 Banh-mi-1 Electrode-Box-B2 2 47 110 -2.92063492063492 8.53010833963215
5 Banh-mi-1 Electrode-Box-B2 3 65 140 -1.92063492063492 3.68883849836231
6 Banh-mi-1 Electrode-Box-B2 4 70 127 -0.920634920634921 0.847568657092467
7 Banh-mi-1 Electrode-Box-B2 5 102 142 0.0793650793650791 0.0062988158226253
8 Banh-mi-1 Electrode-Box-B2 6 90 131 1.07936507936508 1.16502897455278
9 Banh-mi-1 Electrode-Box-B2 7 109 148 2.07936507936508 4.32375913328294
10 Banh-mi-1 Electrode-Box-B2 8 104 137 3.07936507936508 9.4824892920131
11 Banh-mi-1 Electrode-Box-B2 9 119 150 4.07936507936508 16.6412194507433
12 Banh-mi-1 Electrode-Box-B2 10 121 158 5.07936507936508 25.7999496094734
13 Banh-mi-2 Electrode-Box-A2 0 25 97 -4.92063492063492 24.2126480221718
14 Banh-mi-2 Electrode-Box-A2 1 22 101 -3.92063492063492 15.371378180902
15 Banh-mi-2 Electrode-Box-A2 2 22 119 -2.92063492063492 8.53010833963215
16 Banh-mi-2 Electrode-Box-A2 3 29 118 -1.92063492063492 3.68883849836231
17 Banh-mi-2 Electrode-Box-A2 4 27 136 -0.920634920634921 0.847568657092467
18 Banh-mi-2 Electrode-Box-A2 5 43 146 0.0793650793650791 0.0062988158226253
19 Banh-mi-2 Electrode-Box-A2 6 74 146 1.07936507936508 1.16502897455278
20 Banh-mi-2 Electrode-Box-A2 7 70 148 2.07936507936508 4.32375913328294
21 Banh-mi-2 Electrode-Box-A2 8 65 130 3.07936507936508 9.4824892920131
22 Banh-mi-2 Electrode-Box-A2 9 79 151 4.07936507936508 16.6412194507433
23 Banh-mi-2 Electrode-Box-A2 10 93 152 5.07936507936508 25.7999496094734
24 Egg-tart-1 Electrode-Box-B2 0 7 56 -4.92063492063492 24.2126480221718
25 Egg-tart-1 Electrode-Box-B2 1 16 78 -3.92063492063492 15.371378180902
26 Egg-tart-1 Electrode-Box-B2 2 23 103 -2.92063492063492 8.53010833963215
27 Egg-tart-1 Electrode-Box-B2 3 63 120 -1.92063492063492 3.68883849836231
28 Egg-tart-1 Electrode-Box-B2 4 69 132 -0.920634920634921 0.847568657092467
29 Egg-tart-1 Electrode-Box-B2 5 83 136 0.0793650793650791 0.0062988158226253
30 Egg-tart-1 Electrode-Box-B2 6 71 142 1.07936507936508 1.16502897455278
31 Egg-tart-1 Electrode-Box-B2 7 79 138 2.07936507936508 4.32375913328294
32 Egg-tart-1 Electrode-Box-B2 8 98 142 3.07936507936508 9.4824892920131
33 Egg-tart-1 Electrode-Box-B2 9 89 139 4.07936507936508 16.6412194507433
34 Egg-tart-1 Electrode-Box-B2 10 96 143 5.07936507936508 25.7999496094734
35 Egg-tart-2 Electrode-Box-A2 0 9 32 -4.92063492063492 24.2126480221718
36 Egg-tart-2 Electrode-Box-A2 1 2 38 -3.92063492063492 15.371378180902
37 Egg-tart-2 Electrode-Box-A2 2 31 93 -2.92063492063492 8.53010833963215
38 Egg-tart-2 Electrode-Box-A2 3 44 101 -1.92063492063492 3.68883849836231
39 Egg-tart-2 Electrode-Box-A2 4 54 131 -0.920634920634921 0.847568657092467
40 Egg-tart-2 Electrode-Box-A2 5 84 139 0.0793650793650791 0.0062988158226253
41 Egg-tart-2 Electrode-Box-A2 6 85 145 1.07936507936508 1.16502897455278
42 Egg-tart-2 Electrode-Box-A2 7 79 143 2.07936507936508 4.32375913328294
43 Egg-tart-2 Electrode-Box-A2 8 76 131 3.07936507936508 9.4824892920131
44 Egg-tart-2 Electrode-Box-A2 9 88 149 4.07936507936508 16.6412194507433
45 Egg-tart-2 Electrode-Box-A2 10 81 151 5.07936507936508 25.7999496094734
46 Khoai-lang-1 Electrode-Box-B2 0 3 69 -4.92063492063492 24.2126480221718
47 Khoai-lang-1 Electrode-Box-B2 1 18 97 -3.92063492063492 15.371378180902
48 Khoai-lang-1 Electrode-Box-B2 2 27 84 -2.92063492063492 8.53010833963215
49 Khoai-lang-1 Electrode-Box-B2 3 46 121 -1.92063492063492 3.68883849836231
50 Khoai-lang-1 Electrode-Box-B2 4 65 143 -0.920634920634921 0.847568657092467
51 Khoai-lang-1 Electrode-Box-B2 5 76 141 0.0793650793650791 0.0062988158226253
52 Khoai-lang-1 Electrode-Box-B2 6 79 146 1.07936507936508 1.16502897455278
53 Khoai-lang-1 Electrode-Box-B2 7 81 153 2.07936507936508 4.32375913328294
54 Khoai-lang-1 Electrode-Box-B2 8 98 144 3.07936507936508 9.4824892920131
55 Khoai-lang-1 Electrode-Box-B2 9 101 149 4.07936507936508 16.6412194507433
56 Khoai-lang-1 Electrode-Box-B2 10 103 150 5.07936507936508 25.7999496094734
57 Khoai-lang-2 Electrode-Box-A2 0 0 0 -4.92063492063492 24.2126480221718
58 Khoai-lang-2 Electrode-Box-A2 1 0 0 -3.92063492063492 15.371378180902
59 Khoai-lang-2 Electrode-Box-A2 2 10 47 -2.92063492063492 8.53010833963215
60 Khoai-lang-2 Electrode-Box-A2 3 11 52 -1.92063492063492 3.68883849836231
61 Khoai-lang-2 Electrode-Box-A2 4 9 56 -0.920634920634921 0.847568657092467
62 Khoai-lang-2 Electrode-Box-A2 5 34 95 0.0793650793650791 0.0062988158226253
63 Khoai-lang-2 Electrode-Box-A2 6 21 72 1.07936507936508 1.16502897455278
64 Khoai-lang-2 Electrode-Box-A2 7 23 99 2.07936507936508 4.32375913328294
65 Khoai-lang-2 Electrode-Box-A2 8 64 136 3.07936507936508 9.4824892920131
66 Khoai-lang-2 Electrode-Box-A2 9 75 131 4.07936507936508 16.6412194507433
67 Khoai-lang-2 Electrode-Box-A2 10 63 134 5.07936507936508 25.7999496094734
68 Khoai-tay-1 Electrode-Box-A 0 14 62 -4.92063492063492 24.2126480221718
69 Khoai-tay-1 Electrode-Box-A 1 22 83 -3.92063492063492 15.371378180902
70 Khoai-tay-1 Electrode-Box-A 2 6 79 -2.92063492063492 8.53010833963215
71 Khoai-tay-1 Electrode-Box-A 3 28 97 -1.92063492063492 3.68883849836231
72 Khoai-tay-1 Electrode-Box-A 4 60 134 -0.920634920634921 0.847568657092467
73 Khoai-tay-1 Electrode-Box-A 5 75 138 0.0793650793650791 0.0062988158226253
74 Khoai-tay-1 Electrode-Box-A 6 81 137 1.07936507936508 1.16502897455278
75 Khoai-tay-1 Electrode-Box-A 7 78 147 2.07936507936508 4.32375913328294
76 Khoai-tay-1 Electrode-Box-A 8 91 132 3.07936507936508 9.4824892920131
77 Khoai-tay-1 Electrode-Box-A 9 99 146 4.07936507936508 16.6412194507433
78 Khoai-tay-1 Electrode-Box-A 10 94 143 5.07936507936508 25.7999496094734
79 Khoai-tay-2 Electrode-Box-A2 1 21 68 -3.92063492063492 15.371378180902
80 Khoai-tay-2 Electrode-Box-A2 2 6 79 -2.92063492063492 8.53010833963215
81 Khoai-tay-2 Electrode-Box-A2 3 0 83 -1.92063492063492 3.68883849836231
82 Khoai-tay-2 Electrode-Box-A2 4 28 87 -0.920634920634921 0.847568657092467
83 Khoai-tay-2 Electrode-Box-A2 5 31 125 0.0793650793650791 0.0062988158226253
84 Khoai-tay-2 Electrode-Box-A2 6 62 144 1.07936507936508 1.16502897455278
85 Khoai-tay-2 Electrode-Box-A2 7 87 141 2.07936507936508 4.32375913328294
86 Khoai-tay-2 Electrode-Box-A2 8 105 152 3.07936507936508 9.4824892920131
87 Khoai-tay-2 Electrode-Box-A2 9 75 148 4.07936507936508 16.6412194507433
88 Khoai-tay-2 Electrode-Box-A2 10 101 149 5.07936507936508 25.7999496094734
89 OM-2 Electrode-Box-A2 0 1 7 -4.92063492063492 24.2126480221718
90 OM-2 Electrode-Box-A2 1 11 33 -3.92063492063492 15.371378180902
91 OM-2 Electrode-Box-A2 2 19 62 -2.92063492063492 8.53010833963215
92 OM-2 Electrode-Box-A2 3 29 117 -1.92063492063492 3.68883849836231
93 OM-2 Electrode-Box-A2 4 73 126 -0.920634920634921 0.847568657092467
94 OM-2 Electrode-Box-A2 5 53 135 0.0793650793650791 0.0062988158226253
95 OM-2 Electrode-Box-A2 6 73 138 1.07936507936508 1.16502897455278
96 OM-2 Electrode-Box-A2 7 80 131 2.07936507936508 4.32375913328294
97 OM-2 Electrode-Box-A2 8 91 141 3.07936507936508 9.4824892920131
98 OM-2 Electrode-Box-A2 9 90 135 4.07936507936508 16.6412194507433
99 OM-2 Electrode-Box-A2 10 95 142 5.07936507936508 25.7999496094734
100 Root-beer-1 Electrode-Box-B2 0 11 85 -4.92063492063492 24.2126480221718
101 Root-beer-1 Electrode-Box-B2 1 18 76 -3.92063492063492 15.371378180902
102 Root-beer-1 Electrode-Box-B2 2 40 105 -2.92063492063492 8.53010833963215
103 Root-beer-1 Electrode-Box-B2 3 55 134 -1.92063492063492 3.68883849836231
104 Root-beer-1 Electrode-Box-B2 4 75 136 -0.920634920634921 0.847568657092467
105 Root-beer-1 Electrode-Box-B2 5 64 133 0.0793650793650791 0.0062988158226253
106 Root-beer-1 Electrode-Box-B2 6 104 139 1.07936507936508 1.16502897455278
107 Root-beer-1 Electrode-Box-B2 7 98 148 2.07936507936508 4.32375913328294
108 Root-beer-1 Electrode-Box-B2 8 81 145 3.07936507936508 9.4824892920131
109 Root-beer-1 Electrode-Box-B2 9 89 156 4.07936507936508 16.6412194507433
110 Root-beer-1 Electrode-Box-B2 10 105 158 5.07936507936508 25.7999496094734
111 Root-beer-2 Electrode-Box-A2 0 22 74 -4.92063492063492 24.2126480221718
112 Root-beer-2 Electrode-Box-A2 1 31 87 -3.92063492063492 15.371378180902
113 Root-beer-2 Electrode-Box-A2 2 49 134 -2.92063492063492 8.53010833963215
114 Root-beer-2 Electrode-Box-A2 3 31 89 -1.92063492063492 3.68883849836231
115 Root-beer-2 Electrode-Box-A2 4 60 140 -0.920634920634921 0.847568657092467
116 Root-beer-2 Electrode-Box-A2 5 84 147 0.0793650793650791 0.0062988158226253
117 Vu-vuong Electrode-Box-A2 0 18 61 -4.92063492063492 24.2126480221718
118 Vu-vuong Electrode-Box-A2 1 35 91 -3.92063492063492 15.371378180902
119 Vu-vuong Electrode-Box-A2 2 61 127 -2.92063492063492 8.53010833963215
120 Vu-vuong Electrode-Box-A2 3 34 146 -1.92063492063492 3.68883849836231
121 Vu-vuong Electrode-Box-A2 4 61 141 -0.920634920634921 0.847568657092467
122 Vu-vuong Electrode-Box-A2 5 37 151 0.0793650793650791 0.0062988158226253
123 Vu-vuong Electrode-Box-A2 6 49 131 1.07936507936508 1.16502897455278
124 Vu-vuong Electrode-Box-A2 7 65 149 2.07936507936508 4.32375913328294
125 Vu-vuong Electrode-Box-A2 8 67 141 3.07936507936508 9.4824892920131
126 Vu-vuong Electrode-Box-A2 9 73 140 4.07936507936508 16.6412194507433
127 Vu-vuong Electrode-Box-A2 10 72 131 5.07936507936508 25.7999496094734
@@ -0,0 +1,153 @@
subject,group,day,success,total,day_c,day_c2
Banh-mi-1,Electrode-Box-B2,0,13,84,-6.125,37.515625
Banh-mi-1,Electrode-Box-B2,1,35,86,-5.125,26.265625
Banh-mi-1,Electrode-Box-B2,2,47,110,-4.125,17.015625
Banh-mi-1,Electrode-Box-B2,3,65,140,-3.125,9.765625
Banh-mi-1,Electrode-Box-B2,4,70,127,-2.125,4.515625
Banh-mi-1,Electrode-Box-B2,5,102,142,-1.125,1.265625
Banh-mi-1,Electrode-Box-B2,6,90,131,-0.125,0.015625
Banh-mi-1,Electrode-Box-B2,7,109,148,0.875,0.765625
Banh-mi-1,Electrode-Box-B2,8,104,137,1.875,3.515625
Banh-mi-1,Electrode-Box-B2,9,119,150,2.875,8.265625
Banh-mi-1,Electrode-Box-B2,10,121,158,3.875,15.015625
Banh-mi-1,Electrode-Box-B2,11,121,148,4.875,23.765625
Banh-mi-1,Electrode-Box-B2,12,120,149,5.875,34.515625
Banh-mi-1,Electrode-Box-B2,13,135,154,6.875,47.265625
Banh-mi-2,Electrode-Box-A2,0,25,97,-6.125,37.515625
Banh-mi-2,Electrode-Box-A2,1,22,101,-5.125,26.265625
Banh-mi-2,Electrode-Box-A2,2,22,119,-4.125,17.015625
Banh-mi-2,Electrode-Box-A2,3,29,118,-3.125,9.765625
Banh-mi-2,Electrode-Box-A2,4,27,136,-2.125,4.515625
Banh-mi-2,Electrode-Box-A2,5,43,146,-1.125,1.265625
Banh-mi-2,Electrode-Box-A2,6,74,146,-0.125,0.015625
Banh-mi-2,Electrode-Box-A2,7,70,148,0.875,0.765625
Banh-mi-2,Electrode-Box-A2,8,65,130,1.875,3.515625
Banh-mi-2,Electrode-Box-A2,9,79,151,2.875,8.265625
Banh-mi-2,Electrode-Box-A2,10,93,152,3.875,15.015625
Egg-tart-1,Electrode-Box-B2,0,7,56,-6.125,37.515625
Egg-tart-1,Electrode-Box-B2,1,16,78,-5.125,26.265625
Egg-tart-1,Electrode-Box-B2,2,23,103,-4.125,17.015625
Egg-tart-1,Electrode-Box-B2,3,63,120,-3.125,9.765625
Egg-tart-1,Electrode-Box-B2,4,69,132,-2.125,4.515625
Egg-tart-1,Electrode-Box-B2,5,83,136,-1.125,1.265625
Egg-tart-1,Electrode-Box-B2,6,71,142,-0.125,0.015625
Egg-tart-1,Electrode-Box-B2,7,79,138,0.875,0.765625
Egg-tart-1,Electrode-Box-B2,8,98,142,1.875,3.515625
Egg-tart-1,Electrode-Box-B2,9,89,139,2.875,8.265625
Egg-tart-1,Electrode-Box-B2,10,96,143,3.875,15.015625
Egg-tart-1,Electrode-Box-B2,11,96,148,4.875,23.765625
Egg-tart-1,Electrode-Box-B2,12,101,156,5.875,34.515625
Egg-tart-1,Electrode-Box-B2,13,103,152,6.875,47.265625
Egg-tart-2,Electrode-Box-A2,0,9,32,-6.125,37.515625
Egg-tart-2,Electrode-Box-A2,1,2,38,-5.125,26.265625
Egg-tart-2,Electrode-Box-A2,2,31,93,-4.125,17.015625
Egg-tart-2,Electrode-Box-A2,3,44,101,-3.125,9.765625
Egg-tart-2,Electrode-Box-A2,4,54,131,-2.125,4.515625
Egg-tart-2,Electrode-Box-A2,5,84,139,-1.125,1.265625
Egg-tart-2,Electrode-Box-A2,6,85,145,-0.125,0.015625
Egg-tart-2,Electrode-Box-A2,7,79,143,0.875,0.765625
Egg-tart-2,Electrode-Box-A2,8,76,131,1.875,3.515625
Egg-tart-2,Electrode-Box-A2,9,88,149,2.875,8.265625
Egg-tart-2,Electrode-Box-A2,10,81,151,3.875,15.015625
Egg-tart-2,Electrode-Box-A2,11,78,152,4.875,23.765625
Egg-tart-2,Electrode-Box-A2,12,96,155,5.875,34.515625
Egg-tart-2,Electrode-Box-A2,13,84,155,6.875,47.265625
Khoai-lang-1,Electrode-Box-B2,0,3,69,-6.125,37.515625
Khoai-lang-1,Electrode-Box-B2,1,18,97,-5.125,26.265625
Khoai-lang-1,Electrode-Box-B2,2,27,84,-4.125,17.015625
Khoai-lang-1,Electrode-Box-B2,3,46,121,-3.125,9.765625
Khoai-lang-1,Electrode-Box-B2,4,65,143,-2.125,4.515625
Khoai-lang-1,Electrode-Box-B2,5,76,141,-1.125,1.265625
Khoai-lang-1,Electrode-Box-B2,6,79,146,-0.125,0.015625
Khoai-lang-1,Electrode-Box-B2,7,81,153,0.875,0.765625
Khoai-lang-1,Electrode-Box-B2,8,98,144,1.875,3.515625
Khoai-lang-1,Electrode-Box-B2,9,101,149,2.875,8.265625
Khoai-lang-1,Electrode-Box-B2,10,103,150,3.875,15.015625
Khoai-lang-1,Electrode-Box-B2,11,113,154,4.875,23.765625
Khoai-lang-1,Electrode-Box-B2,12,117,148,5.875,34.515625
Khoai-lang-1,Electrode-Box-B2,13,114,146,6.875,47.265625
Khoai-lang-2,Electrode-Box-A2,0,0,0,-6.125,37.515625
Khoai-lang-2,Electrode-Box-A2,1,0,0,-5.125,26.265625
Khoai-lang-2,Electrode-Box-A2,2,10,47,-4.125,17.015625
Khoai-lang-2,Electrode-Box-A2,3,11,52,-3.125,9.765625
Khoai-lang-2,Electrode-Box-A2,4,9,56,-2.125,4.515625
Khoai-lang-2,Electrode-Box-A2,5,34,95,-1.125,1.265625
Khoai-lang-2,Electrode-Box-A2,6,21,72,-0.125,0.015625
Khoai-lang-2,Electrode-Box-A2,7,23,99,0.875,0.765625
Khoai-lang-2,Electrode-Box-A2,8,64,136,1.875,3.515625
Khoai-lang-2,Electrode-Box-A2,9,75,131,2.875,8.265625
Khoai-lang-2,Electrode-Box-A2,10,63,134,3.875,15.015625
Khoai-lang-2,Electrode-Box-A2,11,59,139,4.875,23.765625
Khoai-lang-2,Electrode-Box-A2,12,51,129,5.875,34.515625
Khoai-lang-2,Electrode-Box-A2,13,73,143,6.875,47.265625
Khoai-tay-1,Electrode-Box-A,0,14,62,-6.125,37.515625
Khoai-tay-1,Electrode-Box-A,1,22,83,-5.125,26.265625
Khoai-tay-1,Electrode-Box-A,2,6,79,-4.125,17.015625
Khoai-tay-1,Electrode-Box-A,3,28,97,-3.125,9.765625
Khoai-tay-1,Electrode-Box-A,4,60,134,-2.125,4.515625
Khoai-tay-1,Electrode-Box-A,5,75,138,-1.125,1.265625
Khoai-tay-1,Electrode-Box-A,6,81,137,-0.125,0.015625
Khoai-tay-1,Electrode-Box-A,7,78,147,0.875,0.765625
Khoai-tay-1,Electrode-Box-A,8,91,132,1.875,3.515625
Khoai-tay-1,Electrode-Box-A,9,99,146,2.875,8.265625
Khoai-tay-1,Electrode-Box-A,10,94,143,3.875,15.015625
Khoai-tay-1,Electrode-Box-A,11,110,156,4.875,23.765625
Khoai-tay-1,Electrode-Box-A,12,105,143,5.875,34.515625
Khoai-tay-1,Electrode-Box-A,13,106,153,6.875,47.265625
Khoai-tay-2,Electrode-Box-A2,1,21,68,-5.125,26.265625
Khoai-tay-2,Electrode-Box-A2,2,6,79,-4.125,17.015625
Khoai-tay-2,Electrode-Box-A2,3,0,83,-3.125,9.765625
Khoai-tay-2,Electrode-Box-A2,4,28,87,-2.125,4.515625
Khoai-tay-2,Electrode-Box-A2,5,31,125,-1.125,1.265625
Khoai-tay-2,Electrode-Box-A2,6,62,144,-0.125,0.015625
Khoai-tay-2,Electrode-Box-A2,7,87,141,0.875,0.765625
Khoai-tay-2,Electrode-Box-A2,8,105,152,1.875,3.515625
Khoai-tay-2,Electrode-Box-A2,9,75,148,2.875,8.265625
Khoai-tay-2,Electrode-Box-A2,10,101,149,3.875,15.015625
Khoai-tay-2,Electrode-Box-A2,11,102,154,4.875,23.765625
Khoai-tay-2,Electrode-Box-A2,12,95,144,5.875,34.515625
Khoai-tay-2,Electrode-Box-A2,13,77,149,6.875,47.265625
OM-2,Electrode-Box-A2,0,1,7,-6.125,37.515625
OM-2,Electrode-Box-A2,1,11,33,-5.125,26.265625
OM-2,Electrode-Box-A2,2,19,62,-4.125,17.015625
OM-2,Electrode-Box-A2,3,29,117,-3.125,9.765625
OM-2,Electrode-Box-A2,4,73,126,-2.125,4.515625
OM-2,Electrode-Box-A2,5,53,135,-1.125,1.265625
OM-2,Electrode-Box-A2,6,73,138,-0.125,0.015625
OM-2,Electrode-Box-A2,7,80,131,0.875,0.765625
OM-2,Electrode-Box-A2,8,91,141,1.875,3.515625
OM-2,Electrode-Box-A2,9,90,135,2.875,8.265625
OM-2,Electrode-Box-A2,10,95,142,3.875,15.015625
OM-2,Electrode-Box-A2,11,60,133,4.875,23.765625
OM-2,Electrode-Box-A2,12,58,142,5.875,34.515625
Root-beer-1,Electrode-Box-B2,0,11,85,-6.125,37.515625
Root-beer-1,Electrode-Box-B2,1,18,76,-5.125,26.265625
Root-beer-1,Electrode-Box-B2,2,40,105,-4.125,17.015625
Root-beer-1,Electrode-Box-B2,3,55,134,-3.125,9.765625
Root-beer-1,Electrode-Box-B2,4,75,136,-2.125,4.515625
Root-beer-1,Electrode-Box-B2,5,64,133,-1.125,1.265625
Root-beer-1,Electrode-Box-B2,6,104,139,-0.125,0.015625
Root-beer-1,Electrode-Box-B2,7,98,148,0.875,0.765625
Root-beer-1,Electrode-Box-B2,8,81,145,1.875,3.515625
Root-beer-1,Electrode-Box-B2,9,89,156,2.875,8.265625
Root-beer-1,Electrode-Box-B2,10,105,158,3.875,15.015625
Root-beer-2,Electrode-Box-A2,0,22,74,-6.125,37.515625
Root-beer-2,Electrode-Box-A2,1,31,87,-5.125,26.265625
Root-beer-2,Electrode-Box-A2,2,49,134,-4.125,17.015625
Root-beer-2,Electrode-Box-A2,3,31,89,-3.125,9.765625
Root-beer-2,Electrode-Box-A2,4,60,140,-2.125,4.515625
Root-beer-2,Electrode-Box-A2,5,84,147,-1.125,1.265625
Vu-vuong,Electrode-Box-A2,0,18,61,-6.125,37.515625
Vu-vuong,Electrode-Box-A2,1,35,91,-5.125,26.265625
Vu-vuong,Electrode-Box-A2,2,61,127,-4.125,17.015625
Vu-vuong,Electrode-Box-A2,3,34,146,-3.125,9.765625
Vu-vuong,Electrode-Box-A2,4,61,141,-2.125,4.515625
Vu-vuong,Electrode-Box-A2,5,37,151,-1.125,1.265625
Vu-vuong,Electrode-Box-A2,6,49,131,-0.125,0.015625
Vu-vuong,Electrode-Box-A2,7,65,149,0.875,0.765625
Vu-vuong,Electrode-Box-A2,8,67,141,1.875,3.515625
Vu-vuong,Electrode-Box-A2,9,73,140,2.875,8.265625
Vu-vuong,Electrode-Box-A2,10,72,131,3.875,15.015625
Vu-vuong,Electrode-Box-A2,11,89,158,4.875,23.765625
Vu-vuong,Electrode-Box-A2,12,97,154,5.875,34.515625
Vu-vuong,Electrode-Box-A2,13,93,145,6.875,47.265625
1 subject group day success total day_c day_c2
2 Banh-mi-1 Electrode-Box-B2 0 13 84 -6.125 37.515625
3 Banh-mi-1 Electrode-Box-B2 1 35 86 -5.125 26.265625
4 Banh-mi-1 Electrode-Box-B2 2 47 110 -4.125 17.015625
5 Banh-mi-1 Electrode-Box-B2 3 65 140 -3.125 9.765625
6 Banh-mi-1 Electrode-Box-B2 4 70 127 -2.125 4.515625
7 Banh-mi-1 Electrode-Box-B2 5 102 142 -1.125 1.265625
8 Banh-mi-1 Electrode-Box-B2 6 90 131 -0.125 0.015625
9 Banh-mi-1 Electrode-Box-B2 7 109 148 0.875 0.765625
10 Banh-mi-1 Electrode-Box-B2 8 104 137 1.875 3.515625
11 Banh-mi-1 Electrode-Box-B2 9 119 150 2.875 8.265625
12 Banh-mi-1 Electrode-Box-B2 10 121 158 3.875 15.015625
13 Banh-mi-1 Electrode-Box-B2 11 121 148 4.875 23.765625
14 Banh-mi-1 Electrode-Box-B2 12 120 149 5.875 34.515625
15 Banh-mi-1 Electrode-Box-B2 13 135 154 6.875 47.265625
16 Banh-mi-2 Electrode-Box-A2 0 25 97 -6.125 37.515625
17 Banh-mi-2 Electrode-Box-A2 1 22 101 -5.125 26.265625
18 Banh-mi-2 Electrode-Box-A2 2 22 119 -4.125 17.015625
19 Banh-mi-2 Electrode-Box-A2 3 29 118 -3.125 9.765625
20 Banh-mi-2 Electrode-Box-A2 4 27 136 -2.125 4.515625
21 Banh-mi-2 Electrode-Box-A2 5 43 146 -1.125 1.265625
22 Banh-mi-2 Electrode-Box-A2 6 74 146 -0.125 0.015625
23 Banh-mi-2 Electrode-Box-A2 7 70 148 0.875 0.765625
24 Banh-mi-2 Electrode-Box-A2 8 65 130 1.875 3.515625
25 Banh-mi-2 Electrode-Box-A2 9 79 151 2.875 8.265625
26 Banh-mi-2 Electrode-Box-A2 10 93 152 3.875 15.015625
27 Egg-tart-1 Electrode-Box-B2 0 7 56 -6.125 37.515625
28 Egg-tart-1 Electrode-Box-B2 1 16 78 -5.125 26.265625
29 Egg-tart-1 Electrode-Box-B2 2 23 103 -4.125 17.015625
30 Egg-tart-1 Electrode-Box-B2 3 63 120 -3.125 9.765625
31 Egg-tart-1 Electrode-Box-B2 4 69 132 -2.125 4.515625
32 Egg-tart-1 Electrode-Box-B2 5 83 136 -1.125 1.265625
33 Egg-tart-1 Electrode-Box-B2 6 71 142 -0.125 0.015625
34 Egg-tart-1 Electrode-Box-B2 7 79 138 0.875 0.765625
35 Egg-tart-1 Electrode-Box-B2 8 98 142 1.875 3.515625
36 Egg-tart-1 Electrode-Box-B2 9 89 139 2.875 8.265625
37 Egg-tart-1 Electrode-Box-B2 10 96 143 3.875 15.015625
38 Egg-tart-1 Electrode-Box-B2 11 96 148 4.875 23.765625
39 Egg-tart-1 Electrode-Box-B2 12 101 156 5.875 34.515625
40 Egg-tart-1 Electrode-Box-B2 13 103 152 6.875 47.265625
41 Egg-tart-2 Electrode-Box-A2 0 9 32 -6.125 37.515625
42 Egg-tart-2 Electrode-Box-A2 1 2 38 -5.125 26.265625
43 Egg-tart-2 Electrode-Box-A2 2 31 93 -4.125 17.015625
44 Egg-tart-2 Electrode-Box-A2 3 44 101 -3.125 9.765625
45 Egg-tart-2 Electrode-Box-A2 4 54 131 -2.125 4.515625
46 Egg-tart-2 Electrode-Box-A2 5 84 139 -1.125 1.265625
47 Egg-tart-2 Electrode-Box-A2 6 85 145 -0.125 0.015625
48 Egg-tart-2 Electrode-Box-A2 7 79 143 0.875 0.765625
49 Egg-tart-2 Electrode-Box-A2 8 76 131 1.875 3.515625
50 Egg-tart-2 Electrode-Box-A2 9 88 149 2.875 8.265625
51 Egg-tart-2 Electrode-Box-A2 10 81 151 3.875 15.015625
52 Egg-tart-2 Electrode-Box-A2 11 78 152 4.875 23.765625
53 Egg-tart-2 Electrode-Box-A2 12 96 155 5.875 34.515625
54 Egg-tart-2 Electrode-Box-A2 13 84 155 6.875 47.265625
55 Khoai-lang-1 Electrode-Box-B2 0 3 69 -6.125 37.515625
56 Khoai-lang-1 Electrode-Box-B2 1 18 97 -5.125 26.265625
57 Khoai-lang-1 Electrode-Box-B2 2 27 84 -4.125 17.015625
58 Khoai-lang-1 Electrode-Box-B2 3 46 121 -3.125 9.765625
59 Khoai-lang-1 Electrode-Box-B2 4 65 143 -2.125 4.515625
60 Khoai-lang-1 Electrode-Box-B2 5 76 141 -1.125 1.265625
61 Khoai-lang-1 Electrode-Box-B2 6 79 146 -0.125 0.015625
62 Khoai-lang-1 Electrode-Box-B2 7 81 153 0.875 0.765625
63 Khoai-lang-1 Electrode-Box-B2 8 98 144 1.875 3.515625
64 Khoai-lang-1 Electrode-Box-B2 9 101 149 2.875 8.265625
65 Khoai-lang-1 Electrode-Box-B2 10 103 150 3.875 15.015625
66 Khoai-lang-1 Electrode-Box-B2 11 113 154 4.875 23.765625
67 Khoai-lang-1 Electrode-Box-B2 12 117 148 5.875 34.515625
68 Khoai-lang-1 Electrode-Box-B2 13 114 146 6.875 47.265625
69 Khoai-lang-2 Electrode-Box-A2 0 0 0 -6.125 37.515625
70 Khoai-lang-2 Electrode-Box-A2 1 0 0 -5.125 26.265625
71 Khoai-lang-2 Electrode-Box-A2 2 10 47 -4.125 17.015625
72 Khoai-lang-2 Electrode-Box-A2 3 11 52 -3.125 9.765625
73 Khoai-lang-2 Electrode-Box-A2 4 9 56 -2.125 4.515625
74 Khoai-lang-2 Electrode-Box-A2 5 34 95 -1.125 1.265625
75 Khoai-lang-2 Electrode-Box-A2 6 21 72 -0.125 0.015625
76 Khoai-lang-2 Electrode-Box-A2 7 23 99 0.875 0.765625
77 Khoai-lang-2 Electrode-Box-A2 8 64 136 1.875 3.515625
78 Khoai-lang-2 Electrode-Box-A2 9 75 131 2.875 8.265625
79 Khoai-lang-2 Electrode-Box-A2 10 63 134 3.875 15.015625
80 Khoai-lang-2 Electrode-Box-A2 11 59 139 4.875 23.765625
81 Khoai-lang-2 Electrode-Box-A2 12 51 129 5.875 34.515625
82 Khoai-lang-2 Electrode-Box-A2 13 73 143 6.875 47.265625
83 Khoai-tay-1 Electrode-Box-A 0 14 62 -6.125 37.515625
84 Khoai-tay-1 Electrode-Box-A 1 22 83 -5.125 26.265625
85 Khoai-tay-1 Electrode-Box-A 2 6 79 -4.125 17.015625
86 Khoai-tay-1 Electrode-Box-A 3 28 97 -3.125 9.765625
87 Khoai-tay-1 Electrode-Box-A 4 60 134 -2.125 4.515625
88 Khoai-tay-1 Electrode-Box-A 5 75 138 -1.125 1.265625
89 Khoai-tay-1 Electrode-Box-A 6 81 137 -0.125 0.015625
90 Khoai-tay-1 Electrode-Box-A 7 78 147 0.875 0.765625
91 Khoai-tay-1 Electrode-Box-A 8 91 132 1.875 3.515625
92 Khoai-tay-1 Electrode-Box-A 9 99 146 2.875 8.265625
93 Khoai-tay-1 Electrode-Box-A 10 94 143 3.875 15.015625
94 Khoai-tay-1 Electrode-Box-A 11 110 156 4.875 23.765625
95 Khoai-tay-1 Electrode-Box-A 12 105 143 5.875 34.515625
96 Khoai-tay-1 Electrode-Box-A 13 106 153 6.875 47.265625
97 Khoai-tay-2 Electrode-Box-A2 1 21 68 -5.125 26.265625
98 Khoai-tay-2 Electrode-Box-A2 2 6 79 -4.125 17.015625
99 Khoai-tay-2 Electrode-Box-A2 3 0 83 -3.125 9.765625
100 Khoai-tay-2 Electrode-Box-A2 4 28 87 -2.125 4.515625
101 Khoai-tay-2 Electrode-Box-A2 5 31 125 -1.125 1.265625
102 Khoai-tay-2 Electrode-Box-A2 6 62 144 -0.125 0.015625
103 Khoai-tay-2 Electrode-Box-A2 7 87 141 0.875 0.765625
104 Khoai-tay-2 Electrode-Box-A2 8 105 152 1.875 3.515625
105 Khoai-tay-2 Electrode-Box-A2 9 75 148 2.875 8.265625
106 Khoai-tay-2 Electrode-Box-A2 10 101 149 3.875 15.015625
107 Khoai-tay-2 Electrode-Box-A2 11 102 154 4.875 23.765625
108 Khoai-tay-2 Electrode-Box-A2 12 95 144 5.875 34.515625
109 Khoai-tay-2 Electrode-Box-A2 13 77 149 6.875 47.265625
110 OM-2 Electrode-Box-A2 0 1 7 -6.125 37.515625
111 OM-2 Electrode-Box-A2 1 11 33 -5.125 26.265625
112 OM-2 Electrode-Box-A2 2 19 62 -4.125 17.015625
113 OM-2 Electrode-Box-A2 3 29 117 -3.125 9.765625
114 OM-2 Electrode-Box-A2 4 73 126 -2.125 4.515625
115 OM-2 Electrode-Box-A2 5 53 135 -1.125 1.265625
116 OM-2 Electrode-Box-A2 6 73 138 -0.125 0.015625
117 OM-2 Electrode-Box-A2 7 80 131 0.875 0.765625
118 OM-2 Electrode-Box-A2 8 91 141 1.875 3.515625
119 OM-2 Electrode-Box-A2 9 90 135 2.875 8.265625
120 OM-2 Electrode-Box-A2 10 95 142 3.875 15.015625
121 OM-2 Electrode-Box-A2 11 60 133 4.875 23.765625
122 OM-2 Electrode-Box-A2 12 58 142 5.875 34.515625
123 Root-beer-1 Electrode-Box-B2 0 11 85 -6.125 37.515625
124 Root-beer-1 Electrode-Box-B2 1 18 76 -5.125 26.265625
125 Root-beer-1 Electrode-Box-B2 2 40 105 -4.125 17.015625
126 Root-beer-1 Electrode-Box-B2 3 55 134 -3.125 9.765625
127 Root-beer-1 Electrode-Box-B2 4 75 136 -2.125 4.515625
128 Root-beer-1 Electrode-Box-B2 5 64 133 -1.125 1.265625
129 Root-beer-1 Electrode-Box-B2 6 104 139 -0.125 0.015625
130 Root-beer-1 Electrode-Box-B2 7 98 148 0.875 0.765625
131 Root-beer-1 Electrode-Box-B2 8 81 145 1.875 3.515625
132 Root-beer-1 Electrode-Box-B2 9 89 156 2.875 8.265625
133 Root-beer-1 Electrode-Box-B2 10 105 158 3.875 15.015625
134 Root-beer-2 Electrode-Box-A2 0 22 74 -6.125 37.515625
135 Root-beer-2 Electrode-Box-A2 1 31 87 -5.125 26.265625
136 Root-beer-2 Electrode-Box-A2 2 49 134 -4.125 17.015625
137 Root-beer-2 Electrode-Box-A2 3 31 89 -3.125 9.765625
138 Root-beer-2 Electrode-Box-A2 4 60 140 -2.125 4.515625
139 Root-beer-2 Electrode-Box-A2 5 84 147 -1.125 1.265625
140 Vu-vuong Electrode-Box-A2 0 18 61 -6.125 37.515625
141 Vu-vuong Electrode-Box-A2 1 35 91 -5.125 26.265625
142 Vu-vuong Electrode-Box-A2 2 61 127 -4.125 17.015625
143 Vu-vuong Electrode-Box-A2 3 34 146 -3.125 9.765625
144 Vu-vuong Electrode-Box-A2 4 61 141 -2.125 4.515625
145 Vu-vuong Electrode-Box-A2 5 37 151 -1.125 1.265625
146 Vu-vuong Electrode-Box-A2 6 49 131 -0.125 0.015625
147 Vu-vuong Electrode-Box-A2 7 65 149 0.875 0.765625
148 Vu-vuong Electrode-Box-A2 8 67 141 1.875 3.515625
149 Vu-vuong Electrode-Box-A2 9 73 140 2.875 8.265625
150 Vu-vuong Electrode-Box-A2 10 72 131 3.875 15.015625
151 Vu-vuong Electrode-Box-A2 11 89 158 4.875 23.765625
152 Vu-vuong Electrode-Box-A2 12 97 154 5.875 34.515625
153 Vu-vuong Electrode-Box-A2 13 93 145 6.875 47.265625
+6 -1
View File
@@ -1,7 +1,8 @@
==============================================================================
PAPER LME REPLICATION -- mergeA2
PAPER LME REPLICATION -- mergeA2 (full range)
==============================================================================
model: behavior ~ stim + day + stim:day + (1|rat) [stim: Electrode-Box-B2=1 vs Electrode-Box-A2=0]
behavior = successful reaches (COUNT per session)
N = 8 rats, 109 sessions (day raw; day 0 = paper "Day 1")
day coverage: stim(B2) 0..22, control(A2) 0..14
** WARNING: unequal day coverage -- the full-range stim:day interaction
@@ -63,5 +64,9 @@ day (learning) t(105)= 9.82 F(1)= 96.388 p=1.573e-16
stim (main, Day 1) t(105)= 3.43 F(1)= 11.778 p=0.0008585
interaction 95% CI: [-3.80, -0.56]
INTERPRETATION
- stim x day interaction: SIGNIFICANT (p=0.0090, slope diff=-2.18) -> tDCS (Box-B2) improves SLOWER -- groups converge.
- stim main effect on Day 1 (our day 0): SIGNIFICANT (p=0.0009) -> groups already DIFFER on Day 1.
Paper (N=24): interaction t(227)=2.68, F(1)=7.12, p=0.008; day t(227)=9.64,
F(1)=267.64, p=1.2e-18; stim t(227)=0.23, F(1)=0.053, p=0.81.
@@ -0,0 +1,71 @@
==============================================================================
PAPER LME REPLICATION -- mergeNaive (days 0-10)
==============================================================================
model: behavior ~ stim + day + stim:day + (1|rat) [stim: Electrode-Box-B2=1 vs Electrode-Box-A2=0]
behavior = successful reaches (COUNT per session)
N = 11 rats, 115 sessions (day raw; day 0 = paper "Day 1")
day coverage: stim(B2) 0..10, control(A2) 0..10
(Equal day coverage -- the stim:day interaction over this window is NOT
confounded by the full-range coverage imbalance.)
==============================================================================
FULL MODEL SUMMARY -- fitlme: behavior ~ stim + day + stim:day + (1|rat)
==============================================================================
Linear mixed-effects model fit by ML
Model information:
Number of observations 115
Fixed effects coefficients 4
Random effects coefficients 11
Covariance parameters 2
Formula:
behavior ~ 1 + day*stim + (1 | rat)
Model fit statistics:
AIC BIC LogLikelihood Deviance
952.54 969.01 -470.27 940.54
Fixed effects coefficients (95% CIs):
Name Estimate SE tStat DF pValue
{'(Intercept)'} 10.33 4.3573 2.3706 111 0.019482
{'day' } 8.0907 0.51948 15.575 111 1.0806e-29
{'stim' } 9.4432 7.1538 1.32 111 0.18954
{'day:stim' } 1.6184 0.8216 1.9699 111 0.051345
Lower Upper
1.6953 18.964
7.0613 9.12
-4.7326 23.619
-0.0096134 3.2465
Random effects covariance parameters (95% CIs):
Group: rat (11 Levels)
Name1 Name2 Type Estimate
{'(Intercept)'} {'(Intercept)'} {'std'} 8.4877
Lower Upper
5.0001 14.408
Group: Error
Name Estimate Lower Upper
{'Res Std'} 13.352 11.652 15.299
effect t (df) F (df1) p
------------------------------------------------------------------
stim x day (interaction) t(111)= 1.97 F(1)= 3.880 p=0.05134
day (learning) t(111)= 15.57 F(1)= 242.567 p=1.081e-29
stim (main, Day 1) t(111)= 1.32 F(1)= 1.742 p=0.1895
interaction 95% CI: [-0.01, +3.25]
INTERPRETATION
- stim x day interaction: n.s. (p=0.0513, slope diff=+1.62) -> slopes parallel -- no differential learning rate over this window.
- stim main effect on Day 1 (our day 0): n.s. (p=0.1895) -> groups are comparable on Day 1.
Paper (N=24): interaction t(227)=2.68, F(1)=7.12, p=0.008; day t(227)=9.64,
F(1)=267.64, p=1.2e-18; stim t(227)=0.23, F(1)=0.053, p=0.81.
@@ -0,0 +1,71 @@
==============================================================================
PAPER LME REPLICATION -- mergeNaive (days 0-13)
==============================================================================
model: behavior ~ stim + day + stim:day + (1|rat) [stim: Electrode-Box-B2=1 vs Electrode-Box-A2=0]
behavior = successful reaches (COUNT per session)
N = 11 rats, 138 sessions (day raw; day 0 = paper "Day 1")
day coverage: stim(B2) 0..13, control(A2) 0..13
(Equal day coverage -- the stim:day interaction over this window is NOT
confounded by the full-range coverage imbalance.)
==============================================================================
FULL MODEL SUMMARY -- fitlme: behavior ~ stim + day + stim:day + (1|rat)
==============================================================================
Linear mixed-effects model fit by ML
Model information:
Number of observations 138
Fixed effects coefficients 4
Random effects coefficients 11
Covariance parameters 2
Formula:
behavior ~ 1 + day*stim + (1 | rat)
Model fit statistics:
AIC BIC LogLikelihood Deviance
1164.9 1182.4 -576.44 1152.9
Fixed effects coefficients (95% CIs):
Name Estimate SE tStat DF pValue
{'(Intercept)'} 16.254 4.2865 3.792 134 0.00022519
{'day' } 6.4041 0.42677 15.006 134 1.7662e-30
{'stim' } 8.9845 7.0391 1.2764 134 0.20403
{'day:stim' } 1.7992 0.67672 2.6587 134 0.008801
Lower Upper
7.7764 24.732
5.5601 7.2482
-4.9377 22.907
0.46073 3.1376
Random effects covariance parameters (95% CIs):
Group: rat (11 Levels)
Name1 Name2 Type Estimate
{'(Intercept)'} {'(Intercept)'} {'std'} 8.1481
Lower Upper
4.7633 13.938
Group: Error
Name Estimate Lower Upper
{'Res Std'} 14.825 13.109 16.766
effect t (df) F (df1) p
------------------------------------------------------------------
stim x day (interaction) t(134)= 2.66 F(1)= 7.068 p=0.008801
day (learning) t(134)= 15.01 F(1)= 225.182 p=1.766e-30
stim (main, Day 1) t(134)= 1.28 F(1)= 1.629 p=0.204
interaction 95% CI: [+0.46, +3.14]
INTERPRETATION
- stim x day interaction: SIGNIFICANT (p=0.0088, slope diff=+1.80) -> tDCS (Box-B2) improves FASTER -- benefit accumulates over training.
- stim main effect on Day 1 (our day 0): n.s. (p=0.2040) -> groups are comparable on Day 1.
Paper (N=24): interaction t(227)=2.68, F(1)=7.12, p=0.008; day t(227)=9.64,
F(1)=267.64, p=1.2e-18; stim t(227)=0.23, F(1)=0.053, p=0.81.
+2 -1
View File
@@ -11,7 +11,8 @@ scenarios = {'unmerged_full', 'unmerged_d0_10', ...
'lme_unmerged_d0_13', 'lme_mergeA2_d0_13', 'lme_mergeB2_d0_13', ...
'phase_unmerged', 'phase_mergeA2', 'phase_mergeB2', ...
'paper_unmerged', 'paper_mergeA2', 'paper_mergeB2', ...
'mergeNaive_full', 'paper_mergeNaive', 'phase_mergeNaive'};
'mergeNaive_full', 'paper_mergeNaive', 'phase_mergeNaive', ...
'paper_mergeNaive_d0_10', 'paper_mergeNaive_d0_13'};
for i = 1:numel(scenarios)
fprintf('\n\n### Running scenario: %s ###\n', scenarios{i});
+6
View File
@@ -136,6 +136,12 @@ switch scenario
case 'paper_mergeNaive'
tdcs_paper_lme('mergeNaive', cfg);
case 'paper_mergeNaive_d0_10'
tdcs_paper_lme('mergeNaive', cfg, 'd0_10');
case 'paper_mergeNaive_d0_13'
tdcs_paper_lme('mergeNaive', cfg, 'd0_13');
case 'phase_mergeNaive'
tdcs_phase_lme('mergeNaive', cfg);
+66 -14
View File
@@ -1,23 +1,40 @@
function L = tdcs_paper_lme(mergeKey, cfg)
function L = tdcs_paper_lme(mergeKey, cfg, windowKey)
%TDCS_PAPER_LME Replicate the paper's linear mixed model, verbatim formula:
% behavior ~ stim + day + stim:day + (1|rat)
% fit with fitlme on the Box-B2 (stim = 1, tDCS) vs Box-A2 (stim = 0, control)
% subset of the MERGEKEY grouping ('unmerged'|'mergeA2'|'mergeB2'), over the
% full training range. `behavior` = successful reaches, `day` = training day
% (raw; day 0 = the paper's "Day 1"), `rat` = subject. Reports the three
% effects (stim x day interaction, day, stim) as t(df) / F(1) / p with the
% interaction 95% CI, alongside the paper's reference values, and writes
% results/paper_<MERGEKEY>.txt.
% subset of the MERGEKEY grouping ('unmerged'|'mergeA2'|'mergeB2'|'mergeNaive').
% `behavior` = successful reaches (COUNT), `day` = training day (raw; day 0 =
% the paper's "Day 1"), `rat` = subject. Reports the three effects (stim x day
% interaction, day, stim) as t(df) / F(1) / p with the interaction 95% CI,
% alongside the paper's reference values, and writes a results/ txt file.
%
% L = TDCS_PAPER_LME(MERGEKEY, CFG) uses the full training range (default) and
% writes results/paper_<MERGEKEY>.txt.
%
% L = TDCS_PAPER_LME(MERGEKEY, CFG, WINDOWKEY) restricts to a day window --
% WINDOWKEY is 'full' (day <= 26), 'd0_10' (day <= 10), or 'd0_13' (day <= 13,
% the last day Box-A2 has data). The windowed fits give the two anchor groups
% EQUAL day coverage, so the stim:day interaction is not confounded by the
% full-range coverage imbalance; windowed runs write
% results/paper_<MERGEKEY>_<WINDOWKEY>.txt.
%
% (This is the same model as tdcs_lme -- success ~ day*tDCS + (1|subject) --
% written with the paper's exact term order and variable names.)
%
% L fields: .model .nRats .nObs and .stim/.day/.interaction effect structs
% (.estimate .se .t .df .p from Coefficients; .F .df1 .df2 .Fp from ANOVA;
% .ci = coefficient 95% CI).
% L fields: .model .nRats .nObs .windowKey and .stim/.day/.interaction effect
% structs (.estimate .se .t .df .p from Coefficients; .F .df1 .df2 .Fp from
% ANOVA; .ci = coefficient 95% CI).
Sfull = tdcs_scenario_data([mergeKey '_full']);
A = Sfull(ismember(Sfull.group, {cfg.anchorLow, cfg.anchorHigh}), :);
if nargin < 3 || isempty(windowKey)
windowKey = 'full';
end
if ~ismember(windowKey, {'full', 'd0_10', 'd0_13'})
error('tdcs_paper_lme:badWindow', ...
'windowKey must be ''full'', ''d0_10'', or ''d0_13'' (got "%s").', windowKey);
end
S = tdcs_scenario_data([mergeKey '_' windowKey]);
A = S(ismember(S.group, {cfg.anchorLow, cfg.anchorHigh}), :);
tbl = table();
tbl.behavior = A.success;
@@ -29,6 +46,7 @@ model = fitlme(tbl, 'behavior ~ stim + day + stim:day + (1|rat)');
C = model.Coefficients; An = anova(model); ci = coefCI(model);
L.model = model;
L.windowKey = windowKey;
L.nRats = numel(unique(tbl.rat));
L.nObs = height(tbl);
L.maxDayCtrl = max(tbl.day(tbl.stim == 0));
@@ -54,18 +72,32 @@ e = struct('estimate', C.Estimate(i), 'se', C.SE(i), 't', C.tStat(i), ...
end
function localReport(L, mergeKey, cfg)
window = L.windowKey;
if strcmp(window, 'full')
scenarioName = ['paper_' mergeKey];
windowLabel = 'full range';
else
scenarioName = ['paper_' mergeKey '_' window];
windowLabel = strrep(window, 'd0_10', 'days 0-10');
windowLabel = strrep(windowLabel, 'd0_13', 'days 0-13');
end
bar = repmat('=', 1, 78);
s = sprintf('%s\n', bar);
s = [s sprintf('PAPER LME REPLICATION -- %s\n', mergeKey)];
s = [s sprintf('PAPER LME REPLICATION -- %s (%s)\n', mergeKey, windowLabel)];
s = [s sprintf('%s\n', bar)];
s = [s sprintf('model: behavior ~ stim + day + stim:day + (1|rat) [stim: %s=1 vs %s=0]\n', ...
cfg.anchorHigh, cfg.anchorLow)];
s = [s sprintf('behavior = successful reaches (COUNT per session)\n')];
s = [s sprintf('N = %d rats, %d sessions (day raw; day 0 = paper "Day 1")\n', L.nRats, L.nObs)];
s = [s sprintf('day coverage: stim(B2) 0..%d, control(A2) 0..%d\n', L.maxDayStim, L.maxDayCtrl)];
if abs(L.maxDayStim - L.maxDayCtrl) > 2
s = [s sprintf(['** WARNING: unequal day coverage -- the full-range stim:day interaction\n' ...
' extrapolates the control group''s line and is CONFOUNDED here (the paper''s\n' ...
' groups had equal coverage). See the _d0_13 fair-window and phased analyses. **\n'])];
else
s = [s sprintf(['(Equal day coverage -- the stim:day interaction over this window is NOT\n' ...
' confounded by the full-range coverage imbalance.)\n'])];
end
s = [s sprintf('\n')];
s = [s tdcs_model_summary(L.model, 'fitlme: behavior ~ stim + day + stim:day + (1|rat)') sprintf('\n')];
@@ -75,6 +107,18 @@ s = [s localRow('stim x day (interaction)', L.interaction)];
s = [s localRow('day (learning)', L.day)];
s = [s localRow('stim (main, Day 1)', L.stim)];
s = [s sprintf('interaction 95%% CI: [%+.2f, %+.2f]\n', L.interaction.ci(1), L.interaction.ci(2))];
s = [s sprintf('\nINTERPRETATION\n')];
if L.interaction.p >= 0.05
interTxt = 'slopes parallel -- no differential learning rate over this window';
elseif L.interaction.estimate > 0
interTxt = 'tDCS (Box-B2) improves FASTER -- benefit accumulates over training';
else
interTxt = 'tDCS (Box-B2) improves SLOWER -- groups converge';
end
s = [s sprintf(' - stim x day interaction: %s (p=%.4f, slope diff=%+.2f) -> %s.\n', ...
localSigTxt(L.interaction.p), L.interaction.p, L.interaction.estimate, interTxt)];
s = [s sprintf(' - stim main effect on Day 1 (our day 0): %s (p=%.4f) -> groups %s on Day 1.\n', ...
localSigTxt(L.stim.p), L.stim.p, localPick(L.stim.p < 0.05, 'already DIFFER', 'are comparable'))];
s = [s sprintf(['\nPaper (N=24): interaction t(227)=2.68, F(1)=7.12, p=0.008; ' ...
'day t(227)=9.64,\n F(1)=267.64, p=1.2e-18; stim t(227)=0.23, F(1)=0.053, p=0.81.\n'])];
@@ -82,7 +126,7 @@ fprintf('%s', s);
thisDir = fileparts(mfilename('fullpath'));
resDir = fullfile(thisDir, 'results');
if ~exist(resDir, 'dir'); mkdir(resDir); end
fid = fopen(fullfile(resDir, ['paper_' mergeKey '.txt']), 'w');
fid = fopen(fullfile(resDir, [scenarioName '.txt']), 'w');
if fid < 0; error('tdcs_paper_lme:fopen', 'Cannot open results file.'); end
cleanup = onCleanup(@() fclose(fid)); %#ok<NASGU>
fprintf(fid, '%s', s);
@@ -91,3 +135,11 @@ end
function r = localRow(name, e)
r = sprintf('%-26s t(%d)=%6.2f F(%d)=%8.3f p=%.4g\n', name, e.df, e.t, e.df1, e.F, e.p);
end
function t = localSigTxt(p)
if p < 0.05; t = 'SIGNIFICANT'; else; t = 'n.s.'; end
end
function t = localPick(b, yes, no)
if b; t = yes; else; t = no; end
end
+30
View File
@@ -59,6 +59,36 @@ classdef tLme < matlab.unittest.TestCase
testCase.verifyError(@() tdcs_glm('lme_nonsense'), 'tdcs_glm:badScenario');
end
function testPaperMergeNaiveWindowedFairCoverage(testCase)
% The windowed paper_mergeNaive_* runs cap both anchor arms at the
% window end (equal coverage -> no confound warning), write their own
% results file, and embed the full fitlme summary. Unlike mergeA2,
% the pooled-naive control keeps the interaction significant in the
% fair d0_13 window (~ the paper's F=7.12, p=0.008).
here = fileparts(fileparts(mfilename('fullpath'))); % analysis/matlab
resDir = fullfile(here, 'results');
for w = {'d0_10', 'd0_13'}
name = ['paper_mergeNaive_' w{1}];
evalc(sprintf('tdcs_glm(''%s'')', name));
txt = fileread(fullfile(resDir, [name '.txt']));
testCase.verifyTrue(contains(txt, 'Equal day coverage'), ...
sprintf('%s: expected equal (fair) day coverage', name));
testCase.verifyFalse(contains(txt, '** WARNING'), ...
sprintf('%s: fair window should not warn', name));
testCase.verifyEqual(count(txt, 'Fixed effects coefficients (95% CIs):'), 1);
end
% Fair-window d0_13 interaction reproduces the paper (~F=7.1, p~0.009).
L = tdcs_paper_lme('mergeNaive', tdcs_config(), 'd0_13');
testCase.verifyEqual(L.maxDayStim, L.maxDayCtrl); % equal coverage
testCase.verifyLessThan(L.interaction.p, 0.05);
testCase.verifyGreaterThan(L.interaction.estimate, 0);
end
function testPaperLmeBadWindowErrors(testCase)
testCase.verifyError(@() tdcs_paper_lme('mergeNaive', tdcs_config(), 'bogus'), ...
'tdcs_paper_lme:badWindow');
end
function testReportsIncludeFullModelSummary(testCase)
% Every scenario prints the full native fitlme summary. The lme_*,
% paper_*, and phase_* reports each embed disp(model), whose