3 # This program tests the BINOMIAL subcommand of the NPAR TESTS command.
5 TEMPDIR=/tmp/pspp-tst-$$
6 TESTFILE=$TEMPDIR/`basename $0`.sps
8 # ensure that top_srcdir and top_builddir are absolute
9 if [ -z "$top_srcdir" ] ; then top_srcdir=. ; fi
10 if [ -z "$top_builddir" ] ; then top_builddir=. ; fi
11 top_srcdir=`cd $top_srcdir; pwd`
12 top_builddir=`cd $top_builddir; pwd`
14 PSPP=$top_builddir/src/ui/terminal/pspp$EXEEXT
16 STAT_CONFIG_PATH=$top_srcdir/config
17 export STAT_CONFIG_PATH
25 if [ x"$PSPP_TEST_NO_CLEANUP" != x ] ; then
26 echo "NOT cleaning $TEMPDIR"
62 # Tests for exact calculations
63 activity="create file 1"
65 ECHO 'P < 0.5; N1/N2 < 1' .
69 DATA LIST LIST NOTABLE /x * w *.
84 ECHO 'P < 0.5; N1/N2 > 1' .
90 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
104 ECHO 'P < 0.5; N1/N2 = 1' .
108 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
120 ECHO 'P > 0.5; N1/N2 < 1' .
124 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
137 ECHO 'P > 0.5; N1/N2 > 1' .
141 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
152 ECHO 'P > 0.5; N1/N2 == 1' .
156 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
168 ECHO 'P == 0.5; N1/N2 < 1' .
172 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
185 ECHO 'P == 0.5; N1/N2 > 1' .
189 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
200 ECHO 'P == 0.5; N1/N2 == 1' .
204 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
216 ECHO 'P == 0.5; N1/N2 == 1 Cutpoint' .
218 DATA LIST LIST NOTABLE /x * w *.
228 /BINOMIAL(0.5) = x (10)
231 ECHO 'P == 0.5; N1/N2 == 1 Named values' .
233 DATA LIST LIST NOTABLE /x * w *.
243 /BINOMIAL(0.5) = x (10, 20)
246 if [ $? -ne 0 ] ; then no_result ; fi
249 activity="run program 1"
250 $SUPERVISOR $PSPP -o pspp.csv $TESTFILE
251 if [ $? -ne 0 ] ; then no_result ; fi
253 activity="compare output 1"
254 diff -c $TEMPDIR/pspp.csv - << EOF
258 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
259 x,Group1,1.00,6.00,.286,.300,.551
260 ,Group2,2.00,15.00,.714,,
261 ,Total,,21.00,1.000,,
266 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
267 x,Group1,1,7,.538,.400,.229
274 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
275 x,Group1,1,8,.500,.400,.284
282 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
283 x,Group1,1,11,.478,.600,.164
290 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
291 x,Group1,1,11,.550,.600,.404
298 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
299 x,Group1,1,11,.500,.600,.228
306 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
307 x,Group1,1,8,.348,.500,.210
314 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
315 x,Group1,1,12,.667,.500,.238
322 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
323 x,Group1,1,10,.500,.500,1.000
327 P == 0.5; N1/N2 == 1 Cutpoint
330 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
331 x,Group1,<= 10,10.000,.385,.500,.327
332 ,Group2,,16.000,.615,,
333 ,Total,,26.000,1.000,,
335 P == 0.5; N1/N2 == 1 Named values
338 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
339 x,Group1,10.000,10.000,.435,.500,.678
340 ,Group2,20.000,13.000,.565,,
341 ,Total,,23.000,1.000,,
343 if [ $? -ne 0 ] ; then fail ; fi