+++ /dev/null
-dnl PSPP - a program for statistical analysis.
-dnl Copyright (C) 2017 Free Software Foundation, Inc.
-dnl
-dnl This program is free software: you can redistribute it and/or modify
-dnl it under the terms of the GNU General Public License as published by
-dnl the Free Software Foundation, either version 3 of the License, or
-dnl (at your option) any later version.
-dnl
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-dnl GNU General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU General Public License
-dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
-dnl
-AT_BANNER([GLM procedure])
-
-AT_SETUP([GLM latin square design])
-AT_KEYWORDS([categorical categoricals])
-
-dnl This example comes from :
-dnl http://ssnds.uwo.ca/statsexamples/spssanova/latinsquareresults.html
-AT_DATA([latin.sps], [dnl
-set format = F20.3.
-data list notable fixed /a 1 b 3 c 5 y 7-10(2).
-begin data.
-1 1 6 3.5
-1 2 2 8.9
-1 3 3 9.6
-1 4 4 10.5
-1 5 5 3.1
-1 6 1 5.9
-2 1 2 4.2
-2 2 6 1.9
-2 3 5 3.7
-2 4 3 10.2
-2 5 1 7.2
-2 6 4 7.6
-3 1 1 6.7
-3 2 4 5.8
-3 3 6 -2.7
-3 4 2 4.6
-3 5 3 4.0
-3 6 5 -0.7
-4 1 4 6.6
-4 2 1 4.5
-4 3 2 3.7
-4 4 5 3.7
-4 5 6 -3.3
-4 6 3 3.0
-5 1 3 4.1
-5 2 5 2.4
-5 3 4 6.0
-5 4 1 5.1
-5 5 2 3.5
-5 6 6 4.0
-6 1 5 3.8
-6 2 3 5.8
-6 3 1 7.0
-6 4 6 3.8
-6 5 4 5.0
-6 6 2 8.6
-end data.
-
-variable labels a 'Factor A' b 'Factor B' c 'Factor C' y 'Criterion'.
-
-glm y by b a c
- /intercept=include
- /criteria=alpha(.05)
- /design = a b c
- .
-])
-
-AT_CHECK([pspp -O format=csv latin.sps | sed 's/329.62[[678]]/329.62/'], [0],
- [dnl
-Table: Tests of Between-Subjects Effects
-,Type III Sum Of Squares,df,Mean Square,F,Sig.
-Corrected Model,263.064,15,17.538,5.269,.000
-Intercept,815.103,1,815.103,244.910,.000
-Factor A,78.869,5,15.774,4.739,.005
-Factor B,28.599,5,5.720,1.719,.176
-Factor C,155.596,5,31.119,9.350,.000
-Error,66.563,20,3.328,,
-Total,1144.730,36,,,
-Corrected Total,329.62,35,,,
-])
-
-AT_CLEANUP
-
-AT_SETUP([GLM 2 by 2 factorial design])
-AT_KEYWORDS([categorical categoricals])
-
-AT_DATA([2by2.sps], [dnl
-set format = F20.3.
-data list notable list /Factor0 * Factor1 * points (F10).
-begin data.
-1 4 332
-1 4 380
-1 4 371
-1 4 366
-1 4 354
-1 0 259.5
-1 0 302.5
-1 0 296
-1 0 349
-1 0 309
-2 4 354.67
-2 4 353.5
-2 4 304
-2 4 365
-2 4 339
-2 0 306
-2 0 339
-2 0 353
-2 0 351
-2 0 333
-end data.
-
-glm points by Factor0 Factor1
- /intercept=include
- /criteria=alpha(.05)
- .
-])
-
-
-AT_CHECK([pspp -O format=csv 2by2.sps ], [0],
- [dnl
-Table: Tests of Between-Subjects Effects
-,Type III Sum Of Squares,df,Mean Square,F,Sig.
-Corrected Model,8667.053,3,2889.018,5.043,.012
-Intercept,2256018.640,1,2256018.640,3937.693,.000
-Factor0,313.394,1,313.394,.547,.470
-Factor1,5157.508,1,5157.508,9.002,.008
-Factor0 × Factor1,3196.150,1,3196.150,5.579,.031
-Error,9166.865,16,572.929,,
-Total,2273852.559,20,,,
-Corrected Total,17833.918,19,,,
-])
-
-AT_CLEANUP
-
-
-AT_SETUP([GLM Type I and II Sums of Squares])
-AT_KEYWORDS([categorical categoricals])
-
-dnl The following example comes from
-dnl http://www.uvm.edu/~dhowell/StatPages/More_Stuff/Type1-3.pdf
-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
-end data.
-
-do if B0 = -1 AND B1 = -1 AND B2 = -1.
-compute Bgrp = 4.
-end if.
-
-do if B0 = 0 AND B1 = 0 AND B2 = 1.
-compute Bgrp = 3.
-end if.
-
-do if B0 = 0 AND B1 = 1 AND B2 = 0.
-compute Bgrp = 2.
-end if.
-
-do if B0 = 1 AND B1 = 0 AND B2 = 0.
-compute Bgrp = 1.
-end if.
-])
-
-AT_DATA([type1.sps], [dnl
-include 'data-inc.sps'.
-
-glm dv by Agrp Bgrp
- /method = sstype (1)
- .
-
-glm dv by Agrp Bgrp
- /method = sstype (1)
- /design Bgrp Agrp Bgrp * Agrp
- .
-])
-
-
-AT_CHECK([pspp -O format=csv type1.sps], [0],
- [dnl
-Table: Tests of Between-Subjects Effects
-,Type I Sum Of Squares,df,Mean Square,F,Sig.
-Corrected Model,216.017,7,30.860,5.046,.001
-Agrp,9.579,1,9.579,1.566,.220
-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,,,
-
-Table: Tests of Between-Subjects Effects
-,Type I Sum Of Squares,df,Mean Square,F,Sig.
-Corrected Model,216.017,7,30.860,5.046,.001
-Bgrp,193.251,3,64.417,10.534,.000
-Agrp,2.553,1,2.553,.418,.523
-Bgrp × Agrp,20.212,3,6.737,1.102,.364
-Error,183.457,30,6.115,,
-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
-Table: Tests of Between-Subjects Effects
-,Type II Sum Of Squares,df,Mean Square,F,Sig.
-Corrected Model,216.017,7,30.860,5.046,.001
-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])
-AT_KEYWORDS([categorical categoricals])
-
-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
-Table: Tests of Between-Subjects Effects
-,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,,,
-
-Table: Tests of Between-Subjects Effects
-,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
-
-
-AT_SETUP([GLM missing values])
-AT_KEYWORDS([categorical categoricals])
-
-AT_DATA([glm.data], [dnl
-1 1 6 3.5
-1 2 2 8.9
-1 3 3 9.6
-1 4 4 10.5
-1 5 5 3.1
-1 6 1 5.9
-2 1 2 4.2
-2 2 6 1.9
-2 3 5 3.7
-2 4 3 10.2
-2 5 1 7.2
-2 6 4 7.6
-3 1 1 6.7
-3 2 4 5.8
-3 3 6 -2.7
-3 4 2 4.6
-3 5 3 4.0
-3 6 5 -0.7
-4 1 4 6.6
-4 2 1 4.5
-4 3 2 3.7
-4 4 5 3.7
-4 5 6 -3.3
-4 6 3 3.0
-5 1 3 4.1
-5 2 5 2.4
-5 3 4 6.0
-5 4 1 5.1
-5 5 2 3.5
-5 6 6 4.0
-6 1 5 3.8
-6 2 3 5.8
-6 3 1 7.0
-6 4 6 3.8
-6 5 4 5.0
-6 6 2 8.6
-])
-
-AT_DATA([glm-miss.sps], [dnl
-set format = F20.3.
-data list file='glm.data' notable fixed /a 1 b 3 c 5 y 7-10(2).
-
-do if a=6.
-recode y (else=SYSMIS).
-end if.
-
-glm y by b a c
- /criteria=alpha(.05)
- /design = a b c
- .
-])
-
-AT_CHECK([pspp -O format=csv glm-miss.sps], [0], [dnl
-Table: Tests of Between-Subjects Effects
-,Type III Sum Of Squares,df,Mean Square,F,Sig.
-Corrected Model,251.621,14,17.973,4.969,.002
-Intercept,628.376,1,628.376,173.737,.000
-a,72.929,4,18.232,5.041,.009
-b,20.703,5,4.141,1.145,.380
-c,135.179,5,27.036,7.475,.001
-Error,54.253,15,3.617,,
-Total,934.250,30,,,
-Corrected Total,305.874,29,,,
-])
-
-
-
-AT_DATA([glm-miss2.sps], [dnl
-set format = F20.3.
-data list file='glm.data' notable fixed /a 1 b 3 c 5 y 7-10(2).
-
-select if a <> 6.
-
-glm y by b a c
- /criteria=alpha(.05)
- /design = a b c
- .
-])
-
-AT_CHECK([pspp -O format=csv glm-miss2.sps], [0], [dnl
-Table: Tests of Between-Subjects Effects
-,Type III Sum Of Squares,df,Mean Square,F,Sig.
-Corrected Model,251.621,14,17.973,4.969,.002
-Intercept,628.376,1,628.376,173.737,.000
-a,72.929,4,18.232,5.041,.009
-b,20.703,5,4.141,1.145,.380
-c,135.179,5,27.036,7.475,.001
-Error,54.253,15,3.617,,
-Total,934.250,30,,,
-Corrected Total,305.874,29,,,
-])
-
-
-dnl Now for some missing values in the factor variables.
-
-AT_DATA([glm-miss3.sps], [dnl
-set format = F20.3.
-data list file=glm.data notable fixed /a 1 b 3 c 5 y 7-10(2).
-
-do if a=6.
-recode a (else=SYSMIS).
-end if.
-
-glm y by b a c
- /criteria=alpha(.05)
- /design = a b c
- .
-])
-
-AT_CHECK([pspp -O format=csv glm-miss3.sps], [0], [dnl
-Table: Tests of Between-Subjects Effects
-,Type III Sum Of Squares,df,Mean Square,F,Sig.
-Corrected Model,251.621,14,17.973,4.969,.002
-Intercept,628.376,1,628.376,173.737,.000
-a,72.929,4,18.232,5.041,.009
-b,20.703,5,4.141,1.145,.380
-c,135.179,5,27.036,7.475,.001
-Error,54.253,15,3.617,,
-Total,934.250,30,,,
-Corrected Total,305.874,29,,,
-])
-
-AT_CLEANUP
-
-AT_SETUP([GLM syntax errors])
-AT_DATA([glm.sps], [dnl
-DATA LIST LIST NOTABLE /x y z.
-GLM **.
-GLM x **.
-GLM x BY **.
-GLM x BY y.
-GLM x y BY z.
-GLM x BY y/MISSING=**.
-GLM x BY y/INTERCEPT=**.
-GLM x BY y/CRITERIA=**.
-GLM x BY y/CRITERIA=ALPHA **.
-GLM x BY y/CRITERIA=ALPHA(**).
-GLM x BY y/CRITERIA=ALPHA(123 **).
-GLM x BY y/METHOD=**.
-GLM x BY y/METHOD=SSTYPE **.
-GLM x BY y/METHOD=SSTYPE(4).
-GLM x BY y/METHOD=SSTYPE(2 **).
-GLM x BY y/DESIGN=**.
-GLM x BY y/DESIGN=x(y).
-GLM x BY y/DESIGN=x WITHIN y.
-])
-AT_CHECK([pspp -O format=csv glm.sps], [1], [dnl
-"glm.sps:2.5-2.6: error: GLM: Syntax error expecting variable name.
- 2 | GLM **.
- | ^~"
-
-"glm.sps:3.7-3.8: error: GLM: Syntax error expecting `BY'.
- 3 | GLM x **.
- | ^~"
-
-"glm.sps:4.10-4.11: error: GLM: Syntax error expecting variable name.
- 4 | GLM x BY **.
- | ^~"
-
-"glm.sps:6.1-6.3: error: GLM: Syntax error expecting `BEGIN DATA'.
- 6 | GLM x y BY z.
- | ^~~"
-
-"glm.sps:6.1-6.3: error: GLM: Syntax error expecting end of command.
- 6 | GLM x y BY z.
- | ^~~"
-
-"glm.sps:7.20-7.21: error: GLM: Syntax error expecting INCLUDE or EXCLUDE.
- 7 | GLM x BY y/MISSING=**.
- | ^~"
-
-"glm.sps:8.22-8.23: error: GLM: Syntax error expecting INCLUDE or EXCLUDE.
- 8 | GLM x BY y/INTERCEPT=**.
- | ^~"
-
-"glm.sps:9.21-9.22: error: GLM: Syntax error expecting `ALPHA@{:@'.
- 9 | GLM x BY y/CRITERIA=**.
- | ^~"
-
-"glm.sps:10.21-10.28: error: GLM: Syntax error expecting `ALPHA@{:@'.
- 10 | GLM x BY y/CRITERIA=ALPHA **.
- | ^~~~~~~~"
-
-"glm.sps:11.27-11.28: error: GLM: Syntax error expecting number.
- 11 | GLM x BY y/CRITERIA=ALPHA(**).
- | ^~"
-
-"glm.sps:12.31-12.32: error: GLM: Syntax error expecting `@:}@'.
- 12 | GLM x BY y/CRITERIA=ALPHA(123 **).
- | ^~"
-
-"glm.sps:13.19-13.20: error: GLM: Syntax error expecting `SSTYPE@{:@'.
- 13 | GLM x BY y/METHOD=**.
- | ^~"
-
-"glm.sps:14.19-14.27: error: GLM: Syntax error expecting `SSTYPE@{:@'.
- 14 | GLM x BY y/METHOD=SSTYPE **.
- | ^~~~~~~~~"
-
-"glm.sps:15.26: error: GLM: Syntax error expecting integer between 1 and 3 for SSTYPE.
- 15 | GLM x BY y/METHOD=SSTYPE(4).
- | ^"
-
-"glm.sps:16.28-16.29: error: GLM: Syntax error expecting `@:}@'.
- 16 | GLM x BY y/METHOD=SSTYPE(2 **).
- | ^~"
-
-"glm.sps:17.19-17.20: error: GLM: Syntax error expecting variable name.
- 17 | GLM x BY y/DESIGN=**.
- | ^~"
-
-"glm.sps:18.20: error: GLM: Nested variables are not yet implemented.
- 18 | GLM x BY y/DESIGN=x(y).
- | ^"
-
-"glm.sps:19.21-19.26: error: GLM: Nested variables are not yet implemented.
- 19 | GLM x BY y/DESIGN=x WITHIN y.
- | ^~~~~~"
-])
-AT_CLEANUP