GLM: Mimic spss output with /INTERCEPT=EXCLUDE
[pspp-builds.git] / tests / language / stats / glm.at
index e6c961c7a30578d53976014ce67cc6e52d7e38dc..ec9a6799e379cd31f4852f07ac256e1b2d93bb35 100644 (file)
@@ -127,61 +127,61 @@ Corrected Total,17833.918,19,,,
 AT_CLEANUP
 
 
-AT_SETUP([GLM Type 1 Sums of Squares])
+AT_SETUP([GLM Type I and II Sums of Squares])
 
 dnl  The following example comes from 
 dnl  http://www.uvm.edu/~dhowell/StatPages/More_Stuff/Type1-3.pdf
-AT_DATA([type1.sps], [dnl
+AT_DATA([data-inc.sps], [dnl
 set decimal = dot.
 set format=F20.3.
 data list notable list /dv * Agrp * B0 * B1 * B2 * i0 * i1 * i2 * sss *.
 begin data.
-5 1 1 0 0 1 0 0 1.00
-7 1 1 0 0 1 0 0 1.00
-9 1 1 0 0 1 0 0 1.00
-8 1 1 0 0 1 0 0 1.00
-2 1 0 1 0 0 1 0 1.00
-5 1 0 1 0 0 1 0 1.00
-7 1 0 1 0 0 1 0 1.00
-3 1 0 1 0 0 1 0 1.00
-9 1 0 1 0 0 1 0 1.00
-8 1 0 0 1 0 0 1 1.00
-11 1 0 0 1 0 0 1 1.00
-12 1 0 0 1 0 0 1 1.00
-14 1 0 0 1 0 0 1 1.00
-11 1 -1 -1 -1 -1 -1 -1 1.00
-15 1 -1 -1 -1 -1 -1 -1 1.00
-16 1 -1 -1 -1 -1 -1 -1 1.00
-10 1 -1 -1 -1 -1 -1 -1 1.00
-9 1 -1 -1 -1 -1 -1 -1 1.00
-7 -1 1 0 0 -1 0 0 2.00
-9 -1 1 0 0 -1 0 0 2.00
-10 -1 1 0 0 -1 0 0 2.00
-9 -1 1 0 0 -1 0 0 2.00
-3 -1 0 1 0 0 -1 0 2.00
-8 -1 0 1 0 0 -1 0 2.00
-9 -1 0 1 0 0 -1 0 2.00
-11 -1 0 1 0 0 -1 0 2.00
-9 -1 0 0 1 0 0 -1 2.00
-12 -1 0 0 1 0 0 -1 2.00
-14 -1 0 0 1 0 0 -1 2.00
-8 -1 0 0 1 0 0 -1 2.00
-7 -1 0 0 1 0 0 -1 2.00
-11 -1 -1 -1 -1 1 1 1 2.00
-14 -1 -1 -1 -1 1 1 1 2.00
-10 -1 -1 -1 -1 1 1 1 2.00
-12 -1 -1 -1 -1 1 1 1 2.00
-13 -1 -1 -1 -1 1 1 1 2.00
-11 -1 -1 -1 -1 1 1 1 2.00
-12 -1 -1 -1 -1 1 1 1 2.00
+5   1  1  0  0  1  0  0 1.00
+7   1  1  0  0  1  0  0 1.00
+9   1  1  0  0  1  0  0 1.00
+8   1  1  0  0  1  0  0 1.00
+2   1  0  1  0  0  1  0 1.00
+5   1  0  1  0  0  1  0 1.00
+7   1  0  1  0  0  1  0 1.00
+3   1  0  1  0  0  1  0 1.00
+9   1  0  1  0  0  1  0 1.00
+8   1  0  0  1  0  0  1 1.00
+11  1  0  0  1  0  0  1 1.00
+12  1  0  0  1  0  0  1 1.00
+14  1  0  0  1  0  0  1 1.00
+11  1 -1 -1 -1 -1 -1 -1 1.00
+15  1 -1 -1 -1 -1 -1 -1 1.00
+16  1 -1 -1 -1 -1 -1 -1 1.00
+10  1 -1 -1 -1 -1 -1 -1 1.00
+9   1 -1 -1 -1 -1 -1 -1 1.00
+7  -1  1  0  0 -1  0  0 2.00
+9  -1  1  0  0 -1  0  0 2.00
+10 -1  1  0  0 -1  0  0 2.00
+9  -1  1  0  0 -1  0  0 2.00
+3  -1  0  1  0  0 -1  0 2.00
+8  -1  0  1  0  0 -1  0 2.00
+9  -1  0  1  0  0 -1  0 2.00
+11 -1  0  1  0  0 -1  0 2.00
+9  -1  0  0  1  0  0 -1 2.00
+12 -1  0  0  1  0  0 -1 2.00
+14 -1  0  0  1  0  0 -1 2.00
+8  -1  0  0  1  0  0 -1 2.00
+7  -1  0  0  1  0  0 -1 2.00
+11 -1 -1 -1 -1  1  1  1 2.00
+14 -1 -1 -1 -1  1  1  1 2.00
+10 -1 -1 -1 -1  1  1  1 2.00
+12 -1 -1 -1 -1  1  1  1 2.00
+13 -1 -1 -1 -1  1  1  1 2.00
+11 -1 -1 -1 -1  1  1  1 2.00
+12 -1 -1 -1 -1  1  1  1 2.00
 end data.
 
 do if B0 = -1 AND B1 = -1 AND B2 = -1.
-compute Bgrp = -1.
+compute Bgrp = 4.
 end if.
 
 do if B0 = 0 AND B1 = 0 AND B2 = 1.
-compute Bgrp = 1.
+compute Bgrp = 3.
 end if.
 
 do if B0 = 0 AND B1 = 1 AND B2 = 0.
@@ -189,14 +189,12 @@ compute Bgrp = 2.
 end if.
 
 do if B0 = 1 AND B1 = 0 AND B2 = 0.
-compute Bgrp = 3.
-end if.
-
-
-do if B0 = 0 AND B1 = 1 AND B2 = 0.
-compute Bgrp = 4.
+compute Bgrp = 1.
 end if.
+])
 
+AT_DATA([type1.sps], [dnl
+include 'data-inc.sps'.
 
 glm dv by Agrp Bgrp
        /method = sstype (1)
@@ -238,4 +236,107 @@ Total,3810.000,38,,,
 Corrected Total,399.474,37,,,
 ])
 
+
+AT_DATA([type2.sps], [dnl
+include 'data-inc.sps'.
+
+glm dv by Agrp Bgrp
+       /method = sstype (2)
+       .
+])
+
+
+AT_CHECK([pspp -O format=csv type2.sps], [0],
+  [dnl
+warning: GLM is experimental.  Do not rely on these results.
+
+Table: Tests of Between-Subjects Effects
+Source,Type II Sum of Squares,df,Mean Square,F,Sig.
+Corrected Model,216.017,7,30.860,5.046,.001
+Intercept,3410.526,1,3410.526,557.709,.000
+Agrp,2.553,1,2.553,.418,.523
+Bgrp,186.225,3,62.075,10.151,.000
+Agrp * Bgrp,20.212,3,6.737,1.102,.364
+Error,183.457,30,6.115,,
+Total,3810.000,38,,,
+Corrected Total,399.474,37,,,
+])
+
+AT_CLEANUP
+
+
+
+AT_SETUP([GLM excluded intercept])
+
+dnl  The following example comes from 
+dnl
+dnl Rudolf N. Cardinal
+dnl Graduate-level statistics for psychology and neuroscience
+dnl ANOVA in practice, and complex ANOVA designs
+dnl Version of 2 May 2004
+dnl
+dnl Downloaded from: http://egret.psychol.cam.ac.uk/psychology/graduate/Guide_to_ANOVA.pdf
+
+AT_DATA([intercept-exclude.sps], [dnl
+set format = F20.3.
+
+data list notable list /depvar * A *.
+begin data.
+10     1
+14     1
+8      1
+7      1
+2      1
+10     1
+1      1
+3      1
+2      1
+8.5    1
+14.29  2
+18.49  2
+12.46  2
+11.63  2
+6.66   2
+14.02  2
+5.66   2
+7.06   2
+6.37   2
+13.26  2
+end data.
+
+GLM depvar by A
+   /intercept = exclude
+  .
+
+
+GLM depvar by A
+   /intercept = include
+  .
+
+])
+
+AT_CHECK([pspp -O format=csv intercept-exclude.sps], [0],
+  [dnl
+warning: GLM is experimental.  Do not rely on these results.
+
+Table: Tests of Between-Subjects Effects
+Source,Type III Sum of Squares,df,Mean Square,F,Sig.
+Model,1636.826,2,818.413,43.556,.000
+A,1636.826,2,818.413,43.556,.000
+Error,338.216,18,18.790,,
+Total,1975.042,20,,,
+
+warning: GLM is experimental.  Do not rely on these results.
+
+Table: Tests of Between-Subjects Effects
+Source,Type III Sum of Squares,df,Mean Square,F,Sig.
+Corrected Model,98.568,1,98.568,5.246,.034
+Intercept,1538.258,1,1538.258,81.867,.000
+A,98.568,1,98.568,5.246,.034
+Error,338.216,18,18.790,,
+Total,1975.042,20,,,
+Corrected Total,436.784,19,,,
+])
+
 AT_CLEANUP
+