Added an implementation of the median test
[pspp] / tests / language / stats / npar.at
1 AT_BANNER([NPAR TESTS])
2
3 AT_SETUP([NPAR TESTS BINOMIAL, P < 0.5; N1/N2 < 1])
4 AT_DATA([npar.sps], [dnl
5 SET FORMAT F8.3.
6
7 DATA LIST LIST NOTABLE /x * w *.
8 BEGIN DATA.
9 1   6
10 2   15
11 END DATA.
12
13 WEIGHT BY w.
14
15 NPAR TESTS
16         /BINOMIAL(0.3) = x
17         .
18 ])
19 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
20 Table: Binomial Test
21 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
22 x,Group1,1.000,6.000,.286,.300,.551
23 ,Group2,2.000,15.000,.714,,
24 ,Total,,21.000,1.000,,
25 ])
26 AT_CLEANUP
27
28 AT_SETUP([NPAR TESTS BINOMIAL, P < 0.5; N1/N2 > 1])
29 AT_DATA([npar.sps], [dnl
30 SET FORMAT F8.3.
31
32 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
33 BEGIN DATA.
34 1   7
35 2   6
36 END DATA.
37
38 WEIGHT BY w.
39
40 NPAR TESTS
41         /BINOMIAL(0.4) = x
42         .
43 ])
44 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
45 Table: Binomial Test
46 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
47 x,Group1,1,7,.538,.400,.229
48 ,Group2,2,6,.462,,
49 ,Total,,13,1.000,,
50 ])
51 AT_CLEANUP
52
53 AT_SETUP([NPAR TESTS BINOMIAL, P < 0.5; N1/N2 = 1])
54 AT_DATA([npar.sps], [dnl
55 SET FORMAT F8.3.
56
57 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
58 BEGIN DATA.
59 1   8
60 2   8
61 END DATA.
62
63 WEIGHT BY w.
64
65 NPAR TESTS
66         /BINOMIAL(0.4) = x
67         .
68 ])
69 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
70 Table: Binomial Test
71 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
72 x,Group1,1,8,.500,.400,.284
73 ,Group2,2,8,.500,,
74 ,Total,,16,1.000,,
75 ])
76 AT_CLEANUP
77
78 AT_SETUP([NPAR TESTS BINOMIAL, P > 0.5; N1/N2 < 1])
79 AT_DATA([npar.sps], [dnl
80 SET FORMAT F8.3.
81
82 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
83 BEGIN DATA.
84 1   11
85 2   12
86 END DATA.
87
88 WEIGHT BY w.
89
90 NPAR TESTS
91         /BINOMIAL(0.6) = x
92         .
93 ])
94 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
95 Table: Binomial Test
96 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
97 x,Group1,1,11,.478,.600,.164
98 ,Group2,2,12,.522,,
99 ,Total,,23,1.000,,
100 ])
101 AT_CLEANUP
102
103 AT_SETUP([NPAR TESTS BINOMIAL, P > 0.5; N1/N2 > 1])
104 AT_DATA([npar.sps], [dnl
105 SET FORMAT F8.3.
106
107 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
108 BEGIN DATA.
109 1   11
110 2   9
111 END DATA.
112
113 WEIGHT BY w.
114
115 NPAR TESTS
116         /BINOMIAL(0.6) = x.
117 ])
118 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
119 Table: Binomial Test
120 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
121 x,Group1,1,11,.550,.600,.404
122 ,Group2,2,9,.450,,
123 ,Total,,20,1.000,,
124 ])
125 AT_CLEANUP
126
127 AT_SETUP([NPAR TESTS BINOMIAL, P > 0.5; N1/N2 = 1])
128 AT_DATA([npar.sps], [dnl
129 SET FORMAT F8.3.
130
131 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
132 BEGIN DATA.
133 1   11
134 2   11
135 END DATA.
136
137 WEIGHT BY w.
138
139 NPAR TESTS
140         /BINOMIAL(0.6) = x.
141 ])
142 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
143 Table: Binomial Test
144 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
145 x,Group1,1,11,.500,.600,.228
146 ,Group2,2,11,.500,,
147 ,Total,,22,1.000,,
148 ])
149 AT_CLEANUP
150
151 AT_SETUP([NPAR TESTS BINOMIAL, P = 0.5; N1/N2 < 1])
152 AT_DATA([npar.sps], [dnl
153 SET FORMAT F8.3.
154
155 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
156 BEGIN DATA.
157 1   8
158 2   15
159 END DATA.
160
161 WEIGHT BY w.
162
163 NPAR TESTS
164         /BINOMIAL = x
165         .
166 ])
167 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
168 Table: Binomial Test
169 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
170 x,Group1,1,8,.348,.500,.210
171 ,Group2,2,15,.652,,
172 ,Total,,23,1.000,,
173 ])
174 AT_CLEANUP
175
176 AT_SETUP([NPAR TESTS BINOMIAL, P = 0.5; N1/N2 > 1])
177 AT_DATA([npar.sps], [dnl
178 SET FORMAT F8.3.
179
180 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
181 BEGIN DATA.
182 1   12
183 2   6
184 END DATA.
185
186 WEIGHT BY w.
187
188 NPAR TESTS
189         /BINOMIAL(0.5) = x.
190 ])
191 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
192 Table: Binomial Test
193 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
194 x,Group1,1,12,.667,.500,.238
195 ,Group2,2,6,.333,,
196 ,Total,,18,1.000,,
197 ])
198 AT_CLEANUP
199
200 AT_SETUP([NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1])
201 AT_DATA([npar.sps], [dnl
202 SET FORMAT F8.3.
203
204 DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
205 BEGIN DATA.
206 1   10
207 2   10
208 END DATA.
209
210 WEIGHT BY w.
211
212 NPAR TESTS
213         /BINOMIAL(0.5) = x
214         .
215 ])
216 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
217 Table: Binomial Test
218 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
219 x,Group1,1,10,.500,.500,1.000
220 ,Group2,2,10,.500,,
221 ,Total,,20,1.000,,
222 ])
223 AT_CLEANUP
224
225 AT_SETUP([NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1 Cutpoint])
226 AT_DATA([npar.sps], [dnl
227 SET FORMAT F8.3.
228
229 DATA LIST LIST NOTABLE /x * w *.
230 BEGIN DATA.
231 9    3
232 10   7
233 11   16
234 END DATA.
235
236 WEIGHT BY w.
237
238 NPAR TESTS
239         /BINOMIAL(0.5) = x (10)
240         .
241 ])
242 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
243 Table: Binomial Test
244 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
245 x,Group1,<= 10,10.000,.385,.500,.327
246 ,Group2,,16.000,.615,,
247 ,Total,,26.000,1.000,,
248 ])
249 AT_CLEANUP
250
251 AT_SETUP([NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1 Named values])
252 AT_DATA([npar.sps], [dnl
253 SET FORMAT F8.3.
254
255 DATA LIST LIST NOTABLE /x * w *.
256 BEGIN DATA.
257 10   10
258 15   45
259 20   13
260 END DATA.
261
262 WEIGHT BY w.
263
264 NPAR TESTS
265         /BINOMIAL(0.5) = x (10, 20)
266         .
267 ])
268 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
269 Table: Binomial Test
270 ,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
271 x,Group1,10.000,10.000,.435,.500,.678
272 ,Group2,20.000,13.000,.565,,
273 ,Total,,23.000,1.000,,
274 ])
275 AT_CLEANUP
276
277 AT_SETUP([NPAR TESTS CHISQUARE])
278 AT_DATA([npar.sps], [dnl
279 DATA LIST NOTABLE LIST /x * y * w *.
280 BEGIN DATA.
281 1   2  1
282 2   1  3
283 3.1 1  4
284 3.2 2  1
285 4   2  2
286 5   3  1
287 1   4  2
288 END DATA.
289
290 WEIGHT BY w.
291
292 NPAR TESTS
293   CHISQUARE=x y
294   .
295
296 NPAR TESTS
297   CHISQUARE=y
298   /EXPECTED=3 4 5 4
299   .
300
301 NPAR TESTS
302   CHISQUARE=x y(2, 4)
303   /EXPECTED = 6 10 3
304   .
305 ])
306 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
307 Table: x
308 ,Observed N,Expected N,Residual
309 1.00,3.00,2.33,.67
310 2.00,3.00,2.33,.67
311 3.10,4.00,2.33,1.67
312 3.20,1.00,2.33,-1.33
313 4.00,2.00,2.33,-.33
314 5.00,1.00,2.33,-1.33
315 Total,14.00,,
316
317 Table: y
318 ,Observed N,Expected N,Residual
319 1.00,7.00,3.50,3.50
320 2.00,4.00,3.50,.50
321 3.00,1.00,3.50,-2.50
322 4.00,2.00,3.50,-1.50
323 Total,14.00,,
324
325 Table: Test Statistics
326 ,x,y
327 Chi-Square,3.14,6.00
328 df,5,3
329 Asymp. Sig.,.68,.11
330
331 Table: y
332 ,Observed N,Expected N,Residual
333 1.00,7.00,2.63,4.38
334 2.00,4.00,3.50,.50
335 3.00,1.00,4.38,-3.38
336 4.00,2.00,3.50,-1.50
337 Total,14.00,,
338
339 Table: Test Statistics
340 ,y
341 Chi-Square,10.61
342 df,3
343 Asymp. Sig.,.01
344
345 Table: Frequencies
346 ,x,,,,y,,,
347 ,Category,Observed N,Expected N,Residual,Category,Observed N,Expected N,Residual
348 1,2.00,3.00,3.16,-.16,2.00,4.00,2.21,1.79
349 2,3.00,5.00,5.26,-.26,3.00,1.00,3.68,-2.68
350 3,4.00,2.00,1.58,.42,4.00,2.00,1.11,.89
351 Total,,10.00,,,,7.00,,
352
353 Table: Test Statistics
354 ,x,y
355 Chi-Square,.13,4.13
356 df,2,2
357 Asymp. Sig.,.94,.13
358 ])
359 AT_CLEANUP
360
361 AT_SETUP([NPAR TESTS CHISQUARE expected values missing])
362 AT_DATA([npar.sps], [dnl
363 DATA LIST NOTABLE LIST /x * y * w *.
364 BEGIN DATA.
365 1   2  1
366 2   1  3
367 3.1 1  4
368 3.2 2  1
369 4   2  2
370 5   3  1
371 1   4  2
372 END DATA.
373
374 WEIGHT BY w.
375
376 NPAR TESTS
377   CHISQUARE=y
378   /EXPECTED = 3 4 5 4 3 1
379   .
380 ])
381 AT_CHECK([pspp -O format=csv npar.sps], [1], [dnl
382 "error: CHISQUARE test specified 6 expected values, but 4 distinct values were encountered in variable y."
383
384 Table: Test Statistics
385 ,y
386 Chi-Square,.00
387 df,0
388 Asymp. Sig.,1.00
389 ])
390 AT_CLEANUP
391
392 AT_SETUP([NPAR TESTS CHISQUARE with DESCRIPTIVES])
393 AT_DATA([npar.sps], [dnl
394 DATA LIST NOTABLE LIST /x * y * w * .
395 BEGIN DATA.
396 1   2  1 
397 2   1  3
398 3.1 1  4
399 3.2 2  1
400 4   2  2
401 5   3  1
402 1   4  2
403 .   5  1
404 END DATA.
405
406 WEIGHT BY w.
407
408 MISSING VALUES x (4).
409
410 NPAR TESTS
411   CHISQUARE=x y(-2,5)
412   /MISSING=ANALYSIS
413   /STATISTICS=DESCRIPTIVES
414   .
415 ])
416 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
417 Table: Frequencies
418 ,x,,,,y,,,
419 ,Category,Observed N,Expected N,Residual,Category,Observed N,Expected N,Residual
420 1,-2.00,.00,1.50,-1.50,-2.00,.00,1.88,-1.88
421 2,-1.00,.00,1.50,-1.50,-1.00,.00,1.88,-1.88
422 3,.00,.00,1.50,-1.50,.00,.00,1.88,-1.88
423 4,1.00,3.00,1.50,1.50,1.00,7.00,1.88,5.13
424 5,2.00,3.00,1.50,1.50,2.00,4.00,1.88,2.13
425 6,3.00,5.00,1.50,3.50,3.00,1.00,1.88,-.88
426 7,4.00,.00,1.50,-1.50,4.00,2.00,1.88,.13
427 8,5.00,1.00,1.50,-.50,5.00,1.00,1.88,-.88
428 Total,,12.00,,,,15.00,,
429
430 Table: Test Statistics
431 ,x,y
432 Chi-Square,17.33,22.87
433 df,7,7
434 Asymp. Sig.,.02,.00
435
436 Table: Descriptive Statistics
437 ,N,Mean,Std. Deviation,Minimum,Maximum
438 ,,,,,
439 x,12.00,2.47,1.19,1.00,5.00
440 y,15.00,2.07,1.33,1.00,5.00
441 ])
442 AT_CLEANUP
443
444 AT_SETUP([NPAR TESTS CHISQUARE, listwise missing])
445 AT_DATA([npar.sps], [dnl
446 DATA LIST NOTABLE LIST /x * y * w * .
447 BEGIN DATA.
448 1   2  1 
449 2   1  3
450 3.1 1  4
451 3.2 2  1
452 4   2  2
453 5   3  1
454 1   4  2
455 .   5  1
456 END DATA.
457
458 WEIGHT BY w.
459
460 * MISSING VALUES x (4).
461
462 NPAR TESTS
463   CHISQUARE=x y(-2,5)
464   /MISSING=LISTWISE
465   /STATISTICS=DESCRIPTIVES
466   .
467 ])
468 AT_CHECK([pspp -O format=csv npar.sps], [0], [dnl
469 Table: Frequencies
470 ,x,,,,y,,,
471 ,Category,Observed N,Expected N,Residual,Category,Observed N,Expected N,Residual
472 1,-2.00,.00,1.75,-1.75,-2.00,.00,1.75,-1.75
473 2,-1.00,.00,1.75,-1.75,-1.00,.00,1.75,-1.75
474 3,.00,.00,1.75,-1.75,.00,.00,1.75,-1.75
475 4,1.00,3.00,1.75,1.25,1.00,7.00,1.75,5.25
476 5,2.00,3.00,1.75,1.25,2.00,4.00,1.75,2.25
477 6,3.00,5.00,1.75,3.25,3.00,1.00,1.75,-.75
478 7,4.00,2.00,1.75,.25,4.00,2.00,1.75,.25
479 8,5.00,1.00,1.75,-.75,5.00,.00,1.75,-1.75
480 Total,,14.00,,,,14.00,,
481
482 Table: Test Statistics
483 ,x,y
484 Chi-Square,13.43,26.00
485 df,7,7
486 Asymp. Sig.,.06,.00
487
488 Table: Descriptive Statistics
489 ,N,Mean,Std. Deviation,Minimum,Maximum
490 ,,,,,
491 x,14.00,2.69,1.23,1.00,5.00
492 y,14.00,1.86,1.10,1.00,4.00
493 ])
494 AT_CLEANUP
495
496 AT_SETUP([NPAR TESTS WILCOXON])
497 AT_DATA([npar.sps], [dnl
498 data list notable list /foo * bar * w (f8.0).
499 begin data.
500 1.00     1.00   1
501 1.00     2.00   1
502 2.00     1.00   1
503 1.00     4.00   1
504 2.00     5.00   1
505 1.00    19.00   1
506 2.00     7.00   1
507 4.00     5.00   1
508 1.00    12.00   1
509 2.00    13.00   1
510 2.00     2.00   1
511 12.00      .00  2
512 12.00     1.00  1
513 13.00     1.00  1
514 end data
515
516 variable labels foo "first" bar "second".
517
518 weight by w.
519
520 npar test
521  /wilcoxon=foo with bar (paired)
522  /missing analysis
523  /method=exact.
524 ])
525 AT_CHECK([pspp -o pspp.csv npar.sps])
526 AT_CHECK([cat pspp.csv], [0], [dnl
527 Table: Ranks
528 ,,N,Mean Rank,Sum of Ranks
529 first - second,Negative Ranks,8,6.00,48.00
530 ,Positive Ranks,5,8.60,43.00
531 ,Ties,2,,
532 ,Total,15,,
533
534 Table: Test Statistics
535 ,first - second
536 Z,-.18
537 Asymp. Sig. (2-tailed),.86
538 Exact Sig. (2-tailed),.89
539 Exact Sig. (1-tailed),.45
540 ])
541 AT_CLEANUP
542
543 AT_SETUP([NPAR TESTS WILCOXON with missing values])
544 AT_DATA([npar.sps], [dnl
545 data list notable list /foo * bar * dummy *.
546 begin data.
547 1.00     1.00    1
548 1.00     2.00    1
549 2.00     1.00    1
550 1.00     4.00    .
551 2.00     5.00    .
552 1.00    19.00    .
553 2.00     7.00    1
554 4.00     5.00    1
555 1.00    12.00    1
556 2.00    13.00    1
557 2.00     2.00    1
558 12.00      .00   1
559 12.00      .00   1
560 34.2       .     1
561 12.00     1.00   1  
562 13.00     1.00   1
563 end data
564
565 variable labels foo "first" bar "second".
566
567 npar test
568  /wilcoxon=foo with bar (paired)
569  /missing analysis
570  /method=exact.
571
572 ])
573 AT_CHECK([pspp -o pspp.csv npar.sps])
574 dnl This is the same output as the previous test.
575 AT_CHECK([cat pspp.csv], [0], [dnl
576 Table: Ranks
577 ,,N,Mean Rank,Sum of Ranks
578 first - second,Negative Ranks,8,6.00,48.00
579 ,Positive Ranks,5,8.60,43.00
580 ,Ties,2,,
581 ,Total,15,,
582
583 Table: Test Statistics
584 ,first - second
585 Z,-.18
586 Asymp. Sig. (2-tailed),.86
587 Exact Sig. (2-tailed),.89
588 Exact Sig. (1-tailed),.45
589 ])
590 AT_CLEANUP
591
592 AT_SETUP([NPAR TESTS SIGN])
593 AT_DATA([npar.sps], [dnl
594 set format = F9.3.
595
596 data list notable list /age * height rank *.
597 begin data.
598 10 12 11
599 12 13 13 
600 13 14 12
601 12 12 10
602 9   9 10
603 10.3 10.2 12
604 end data.
605
606 npar tests
607         /sign=age height WITH height rank (PAIRED)
608         /MISSING ANALYSIS
609         /METHOD=EXACT
610         .
611 ])
612 AT_CHECK([pspp -o pspp.csv npar.sps])
613 dnl Some machines return .313 instead of .312 for the Point Probability
614 dnl (see bug #31611).
615 AT_CHECK([sed 's/\.313$/.312/' pspp.csv], [0], [dnl
616 Table: Frequencies
617 ,,N
618 age - height,Negative Differences,3
619 ,Positive Differences,1
620 ,Ties,2
621 ,Total,6
622 height - rank,Negative Differences,2
623 ,Positive Differences,3
624 ,Ties,1
625 ,Total,6
626
627 Table: Test Statistics
628 ,age - height,height - rank
629 Exact Sig. (2-tailed),.625,1.000
630 Exact Sig. (1-tailed),.312,.500
631 Point Probability,.250,.312
632 ])
633 AT_CLEANUP
634
635
636 AT_SETUP([NPAR Kruskal-Wallis test])
637
638 dnl Simple case
639 AT_DATA([kw-simple.sps], [dnl
640 set format = F9.3.
641
642 data list notable list /gv * xscore *.
643 begin data
644 1 96
645 1 128
646 1 83
647 2 132
648 2 135
649 2 109
650 3 115
651 1 61
652 1 101
653 2 82
654 2 124
655 3 149 
656 3 166
657 3 147
658 end data.
659
660 value label /gv
661        1 "timed out"
662        2 "hit wicket"
663        3 "handled the ball".
664
665 npar tests
666         /kruskal-wallis xscore by gv (1, 3)
667         .
668 ])
669
670 AT_CHECK([pspp -o pspp.csv kw-simple.sps])
671 AT_CHECK([cat pspp.csv], [0], [dnl
672 Table: Ranks
673 ,gv,N,Mean Rank
674 xscore,timed out,5,4.400
675 ,handled the ball,4,11.500
676 ,hit wicket,5,7.400
677 ,Total,14,
678
679 Table: Test Statistics
680 ,,xscore
681 Chi-Square,,6.406
682 df,,2
683 Asymp. Sig.,,.041
684 ])
685
686
687 dnl Now try a missing value in the group variable
688 AT_DATA([kw-missing-group.sps], [dnl
689 set format = F9.3.
690
691 data list notable list /gv * xscore *.
692 begin data
693 1 96
694 1 128
695 1 83
696 1 61
697 1 101
698 2 82
699 2 124
700 2 132
701 2 135
702 2 109
703 3 115
704 3 149 
705 3 166
706 3 147
707 2.5 344
708 end data.
709
710 missing values gv (2.5).
711
712 value label /gv
713        1 "timed out"
714        2 "hit wicket"
715        3 "handled the ball".
716
717 npar tests
718         /kruskal-wallis xscore by gv (1, 3)
719         /missing=exclude
720         .
721 ])
722
723 AT_CHECK([pspp -o pspp2.csv kw-missing-group.sps])
724
725 dnl The result should be the same as before
726 AT_CHECK([diff pspp.csv pspp2.csv], [0])
727
728 AT_CLEANUP
729
730
731 AT_SETUP([NPAR Kruskal-Wallis multiple-variables])
732
733 AT_DATA([kw-multi.sps], [dnl
734 set format = F9.3.
735
736 data list notable list /gv * xscore * yscore.
737 begin data
738 1 96   .
739 1 128  .
740 1 83   . 
741 2 132  132
742 2 135  135
743 2 109  109
744 3 115  115
745 1 61   . 
746 1 101  .
747 2 82   82 
748 2 124  124
749 3 149  149
750 3 166  166
751 3 147  147
752 4 .    96
753 4 .    128
754 4 .    83
755 4 .    61
756 4 .    101
757 end data.
758
759 value label /gv
760        1 "timed out"
761        2 "hit wicket"
762        3 "handled the ball"
763        4 "bowled"
764        5 "lbw"
765        .
766        
767 npar tests
768         /k-w xscore yscore by gv (1, 5)
769         .
770
771 ])
772
773
774 AT_CHECK([pspp -o pspp.csv kw-multi.sps])
775 AT_CHECK([cat pspp.csv], [0], [dnl
776 Table: Ranks
777 ,gv,N,Mean Rank
778 xscore,timed out,5,4.400
779 ,handled the ball,4,11.500
780 ,hit wicket,5,7.400
781 ,Total,14,
782 yscore,handled the ball,4,11.500
783 ,bowled,5,4.400
784 ,hit wicket,5,7.400
785 ,Total,14,
786
787 Table: Test Statistics
788 ,,xscore,yscore,
789 Chi-Square,,6.406,6.406,
790 df,,2,2,
791 Asymp. Sig.,,.041,.041,
792 ])
793
794 AT_CLEANUP
795
796
797
798 AT_SETUP([NPAR TESTS Runs])
799 AT_DATA([npar-runs.sps], [dnl
800 set format F11.4.
801 data list notable list /score * w *.
802 begin data
803 4     6
804 .     4
805 4     3 
806 3    20 
807 2    29 
808 1    42 
809 6    18 
810 5     7 
811 6    78 
812 5    10 
813 6    46 
814 5     5 
815 6    17 
816 5     1 
817 6    11 
818 4     2 
819 3     7 
820 2     6 
821 1    10 
822 4    13 
823 3    22 
824 3    11 
825 2    24 
826 1    18 
827 4     4 
828 3    12 
829 2    10 
830 1    25 
831 4     4 
832 3     7 
833 2     3 
834 1     4 
835 4     2 
836 3     3 
837 2     2 
838 1     4 
839 end data.
840
841 weight by w.
842
843 npar tests
844         /runs (MEDIAN) = score
845         /runs (MEAN) = score
846         /runs (MODE) = score 
847         .
848 ])
849
850 AT_CHECK([pspp -o pspp.csv npar-runs.sps])
851
852 AT_CHECK([cat pspp.csv], [0], [dnl
853 Table: Runs Test
854 ,score
855 Test Value (median),3.0000
856 Cases < Test Value,177.0000
857 Cases ≥ Test Value,309.0000
858 Total Cases,486.0000
859 Number of Runs,12
860 Z,-20.9931
861 Asymp. Sig. (2-tailed),.0000
862
863 Table: Runs Test
864 ,score
865 Test Value (mean),3.6379
866 Cases < Test Value,259.0000
867 Cases ≥ Test Value,227.0000
868 Total Cases,486.0000
869 Number of Runs,12
870 Z,-21.0650
871 Asymp. Sig. (2-tailed),.0000
872
873 Table: Runs Test
874 ,score
875 Test Value (mode),6.0000
876 Cases < Test Value,316.0000
877 Cases ≥ Test Value,170.0000
878 Total Cases,486.0000
879 Number of Runs,11
880 Z,-21.0742
881 Asymp. Sig. (2-tailed),.0000
882 ])
883
884 AT_CLEANUP
885
886
887 AT_SETUP([NPAR TESTS Friedman])
888 AT_DATA([npar-friedman.sps], [dnl
889 set format F15.4.
890 data list notable list /x * y * z.
891 begin data
892 9.5 6.5 8.1
893 8.0 6.0 6.0
894 7.0 6.5 4.2
895 9.5 5.0 7.3
896 9.0 7.0 6.2
897 8.5 6.9 6.5
898 7.5 8.0 6.5
899 6.0 8.0 3.1
900 5.0 6.0 4.9
901 7.5 7.5 6.2
902 end data.
903
904 npar tests
905      /friedman = x y z.
906 ])
907
908 AT_CHECK([pspp -o pspp.csv npar-friedman.sps])
909
910 AT_CHECK([cat pspp.csv], [0], [dnl
911 Table: Ranks
912 ,Mean Rank
913 x,2.6500
914 y,2.1000
915 z,1.2500
916
917 Table: Test Statistics
918 N,10
919 Chi-Square,10.4737
920 df,2
921 Asymp. Sig.,.0053
922 ])
923
924 AT_CLEANUP
925
926
927
928 AT_SETUP([NPAR TESTS Mann-Whitney])
929 AT_DATA([npar-mann-whitney.sps], [dnl
930 SET FORMAT     = F11.4
931
932 data list notable list /height * sex (f1.0).
933 begin data.
934 201 1            
935 84 1            
936 83 1            
937 94 1            
938 88 0            
939 99 0            
940 55 0            
941 69 0            
942 86 1            
943 79 1            
944 91 0            
945 201 0            
946 88 1            
947 85 1            
948 82 1            
949 88 0            
950 75 0            
951 99 0            
952 81 0            
953 72 1            
954 89 1            
955 92 1            
956 80 0            
957 82 0            
958 76 0            
959 65 0            
960 85 0            
961 76 1            
962 145 1            
963 24 1            
964 end data.
965
966 NPAR TESTS 
967      /M-W = height BY sex (0,1).
968 ])
969
970 AT_CHECK([pspp -o pspp.csv npar-mann-whitney.sps])
971
972 AT_CHECK([cat pspp.csv], [0], [dnl
973 Table: Ranks
974 ,N,,,Mean Rank,,Sum of Ranks,
975 ,0,1,Total,0,1,0,1
976 height,15.0000,15.0000,30.0000,14.5333,16.4667,218.0000,247.0000
977
978 Table: Test Statistics
979 ,Mann-Whitney U,Wilcoxon W,Z,Asymp. Sig. (2-tailed)
980 height,98.0000,218.0000,-.6020,.5472
981 ])
982
983
984 AT_CLEANUP
985
986
987 AT_SETUP([NPAR TESTS Cochran])
988 AT_DATA([npar-cochran.sps], [dnl
989 set format f11.3.
990
991 data list notable list /v1 * v2 * v3 * v4 * v5 * v6 * v7 *.
992 begin data.
993 2 1 1 2 1 1 2 
994 2 2 2 2 1 1 1  
995 1 1 2 2 1 1 2  
996 2 2 2 2 1 1 2 
997 2 1 2 1 1 2 1 
998 1 2 2 1 1 1 1 
999 1 2 2 2 2 2 2 
1000 2 2 1 2 1 1 1 
1001 1 2 1 2 1 1 2 
1002 end data.     
1003
1004 npar tests 
1005         /cochran = v1 to v7 .
1006
1007 ])
1008
1009 AT_CHECK([pspp -o pspp.csv npar-cochran.sps])
1010
1011 AT_CHECK([cat pspp.csv], [0], [dnl
1012 Table: Frequencies
1013 ,Value,
1014 ,Success (2),Failure (1)
1015 v1,5,4
1016 v2,6,3
1017 v3,6,3
1018 v4,7,2
1019 v5,1,8
1020 v6,2,7
1021 v7,5,4
1022
1023 Table: Test Statistics
1024 N,9
1025 Cochran's Q,12.735
1026 df,6
1027 Asymp. Sig.,.047
1028 ])
1029
1030 AT_CLEANUP
1031
1032
1033
1034 AT_SETUP([NPAR TESTS Kendall])
1035 AT_DATA([npar-kendall.sps], [dnl
1036 SET FORMAT F14.3.
1037
1038 data list notable list /v1 * v2 * v3
1039 begin data.
1040  7  7  2 
1041  5  6  5 
1042  8  6  4 
1043  5  7  4 
1044  5  4  4 
1045  8  6  5 
1046  6  3  5 
1047  7  6  5 
1048  8  5  5
1049  .  2  2 
1050  5  4  5 
1051  3  4  4 
1052  5  1  2 
1053  5  2  1 
1054  7  6  5 
1055  6  3  4 
1056  6  6  6 
1057  5  4  5 
1058  4  3  4 
1059  9  1  1 
1060  6  2  1 
1061  3  7  8 
1062  6  3  4 
1063  4  4  4 
1064  5  4  3 
1065  6  5  2 
1066  4  4  8 
1067  4  6  4 
1068  6  5  5 
1069  7  8  6 
1070  5  3  5 
1071 end data.
1072
1073 npar tests
1074         /kendall = all
1075         .
1076 ])
1077
1078 AT_CHECK([pspp -o pspp.csv npar-kendall.sps])
1079
1080 AT_CHECK([cat pspp.csv], [0], [dnl
1081 Table: Ranks
1082 ,Mean Rank
1083 v1,2.500
1084 v2,1.817
1085 v3,1.683
1086
1087 Table: Test Statistics
1088 N,30
1089 Kendall's W,.233
1090 Chi-Square,13.960
1091 df,2
1092 Asymp. Sig.,.001
1093 ])
1094
1095 AT_CLEANUP
1096
1097
1098
1099 AT_SETUP([NPAR TESTS McNemar])
1100
1101 AT_DATA([mcnemar.sps], [dnl
1102 set format = F12.3.
1103 data list notable list /v1 * v2 * junk *.
1104 begin data.
1105 0 0 0
1106 0 0 0
1107 0 0 0
1108 0 0 0
1109 0 1 0
1110 0 1 0
1111 0 1 0
1112 0 1 0
1113 0 1 1
1114 0 1 1
1115 0 1 1
1116 0 1 1
1117 0 1 1
1118 1 0 1
1119 1 0 1
1120 1 1 1
1121 1 1 1
1122 1 1 0
1123 1 1 0
1124 1 1 1
1125 end data.
1126
1127 npar tests 
1128      /mcnemar = v1 WITH v2 junk.
1129 ])
1130
1131 AT_CHECK([pspp -O format=csv mcnemar.sps], [0], [dnl
1132 Table: v1 & v2
1133 v1,v2,
1134 ,.000,1.000
1135 .000,4,9
1136 1.000,2,5
1137
1138 Table: v1 & junk
1139 v1,junk,
1140 ,.000,1.000
1141 .000,8,5
1142 1.000,2,5
1143
1144 Table: Test Statistics
1145 ,N,Exact Sig. (2-tailed),Exact Sig. (1-tailed),Point Probability
1146 v1 & v2,20,.065,.033,.027
1147 v1 & junk,20,.453,.227,.164
1148 ])
1149
1150 AT_CLEANUP
1151
1152
1153 AT_SETUP([NPAR TESTS Kolmogorov-Smirnov Uniform parameters given])
1154
1155 AT_DATA([ks-uniform.sps], [dnl
1156 set format F12.3.
1157 data list notable list /x *.
1158 begin data
1159 .554
1160 .382
1161 .329
1162 .480
1163 .711
1164 .503
1165 .203
1166 .477
1167 .621
1168 .581
1169 end data.
1170
1171 npar tests k-s (uniform 0 1) = x.
1172 ])
1173
1174 AT_CHECK([pspp -O format=csv ks-uniform.sps], [0], [dnl
1175 Table: One-Sample Kolmogorov-Smirnov Test
1176 ,,x
1177 N,,10
1178 Uniform Parameters,Minimum,.000
1179 ,Maximum,1.000
1180 Most Extreme Differences,Absolute,.289
1181 ,Positive,.289
1182 ,Negative,-.229
1183 Kolmogorov-Smirnov Z,,.914
1184 Asymp. Sig. (2-tailed),,.374
1185 ])
1186
1187 AT_CLEANUP
1188
1189
1190 AT_SETUP([NPAR TESTS Kolmogorov-Smirnov Normal parameters imputed])
1191
1192 AT_DATA([ks-normal.sps], [dnl
1193 set format = F12.3.
1194
1195 data list notable list /foo * bar *.
1196 begin data.
1197 65 12.5
1198 59 14.2
1199 43 12.6
1200 57 
1201 68 
1202 79 
1203 51 
1204 62 
1205 57  
1206 73 
1207 58 
1208 58 
1209 68 
1210 75 
1211 47 
1212 70 
1213 59 
1214 71 
1215 52 
1216 48 13.0
1217 58 14.1
1218 37 15.0
1219 39 13.1
1220 58 13.2
1221 43 14.5
1222 58 13.5
1223 86 14.0
1224 63 12.5
1225 80 12.8
1226 70 
1227 63 
1228 53 
1229 53 
1230 48 
1231 49 
1232 51 
1233 47 
1234 81 
1235 66 
1236 78 
1237 65
1238 69 
1239 70 12.1
1240 63 12.5
1241 64 12.4
1242 39 13.8
1243 51 13.2
1244 68 14.0
1245 76 12.6
1246 53 12.1
1247 71 13.5
1248 47 13.8
1249 87 14.1
1250 72 12.9
1251 48 12.1
1252 75 12.8
1253 51 13.4
1254 63 13.9
1255 61 12.5
1256 61 12.4
1257 66 12.8
1258 82 12.9
1259 81 13.6
1260 46 
1261 52 
1262 71 
1263 73 
1264 58 
1265 57 
1266 46 
1267 58 
1268 52 13.5
1269 71 13.2
1270 57 12.8
1271 78 14.1
1272 73 12.1
1273 50 12.6
1274 71
1275 51
1276 51
1277 68
1278 84
1279 64
1280 66
1281 65
1282 52
1283 56
1284 70
1285 68
1286 66
1287 78
1288 65
1289 71
1290 53
1291 81
1292 53
1293 57
1294 64
1295 61
1296 43
1297 56
1298 37
1299 74
1300 66
1301 81
1302 67
1303 80
1304 68
1305 76
1306 70
1307 80
1308 42
1309 74
1310 80
1311 70
1312 60
1313 39
1314 72
1315 69
1316 63
1317 72
1318 63
1319 49
1320 53 13.2
1321 43 13.8
1322 51 12.5
1323 63 12.6
1324 64 12.9
1325 65 13.0
1326 64 12.5
1327 66 12.0
1328 55 
1329 62 
1330 58 
1331 48 
1332 67 
1333 46 
1334 36 
1335 61 
1336 55 
1337 77 
1338 74 
1339 60 
1340 70  
1341 69 
1342 57 
1343 49 
1344 63 
1345 69 
1346 63 
1347 76 
1348 53 
1349 54 
1350 42 
1351 64 
1352 66 
1353 61 
1354 62 
1355 73 
1356 73 
1357 60 
1358 79 
1359 40 
1360 48 
1361 76 
1362 60 
1363 76 
1364 54
1365 69
1366 65
1367 69
1368 51
1369 54
1370 82
1371 end data.
1372
1373 npar tests 
1374         /k-s (normal) = foo bar.
1375 ])
1376
1377 AT_CHECK([pspp -O format=csv ks-normal.sps], [0], [dnl
1378 Table: One-Sample Kolmogorov-Smirnov Test
1379 ,,foo,bar
1380 N,,174,48
1381 Normal Parameters,Mean,62.109,13.108
1382 ,Std. Deviation,11.548,.718
1383 Most Extreme Differences,Absolute,.059,.115
1384 ,Positive,.055,.115
1385 ,Negative,-.059,-.082
1386 Kolmogorov-Smirnov Z,,.785,.795
1387 Asymp. Sig. (2-tailed),,.569,.552
1388 ])
1389
1390
1391 AT_CLEANUP
1392
1393
1394 AT_SETUP([NPAR TESTS Median Test (median imputed)])
1395
1396 AT_DATA([median1.sps], [dnl
1397 set format F12.3.
1398 data list notable list /ignore * animal * years * w *.
1399 begin data
1400 99  1   10  1
1401 99  4    1  1
1402 99  5   11  1
1403 99  5   10  1
1404 99  3    7  1
1405 99  6   10  1
1406 99  0    7  1
1407 99  3   14  1
1408 99  2    3  1
1409 99  1    1  1
1410 99  4    7  1
1411 99  5   12  1
1412 99  3    6  1
1413 99  4    1  1
1414 99  3    5  1
1415 99  5    7  1
1416 99  4    6  1
1417 99  3   14  1
1418 99  4    8  1
1419 99  5   13  1
1420 99  2    0  1
1421 99  4    7  1
1422 99  4    7  1
1423 99  1    0  1
1424 99  2    8  1
1425 99  4   10  1
1426 99  2    3  1
1427 99  2    0  1
1428 99  4    8  1
1429 99  1    8  1
1430 end data.
1431
1432
1433 variable label years 'Years expected'.
1434 variable label animal 'Animal Genus'.
1435
1436 add value labels animal 1 'Animal 1' 2 'Animal 2' 3 'Animal 3' 4 'Animal 4' 5 'Animal 5'.
1437
1438 npar tests
1439      /median = years by animal (1, 5)
1440      .
1441 ])
1442
1443
1444 AT_CHECK([pspp -O format=csv median1.sps], [0], [dnl
1445 Table: Frequencies
1446 ,,Animal Genus,,,,
1447 ,,Animal 1,Animal 2,Animal 3,Animal 4,Animal 5
1448 Years expected,> Median,2,1,2,3,4
1449 ,≤ Median,2,4,3,6,1
1450
1451 Table: Test Statistics
1452 ,N,Median,Chi-Square,df,Asymp. Sig.
1453 Years expected,28,7.000,4.317,4,.365
1454 ])
1455
1456 AT_CLEANUP
1457
1458
1459 AT_SETUP([NPAR TESTS Median Test (median given)])
1460
1461 AT_DATA([median2.sps], [dnl
1462 set format F12.3.
1463 data list notable list /ignore * animal * years * w *.
1464 begin data
1465 99  1   10  1
1466 99  4    1  1
1467 99  5   11  1
1468 99  5   10  1
1469 99  3    7  1
1470 99  3   14  1
1471 99  2    3  1
1472 99  1    1  1
1473 99  4    7  1
1474 99  5   12  1
1475 99  3    6  1
1476 99  4    1  1
1477 99  3    5  1
1478 99  5    7  1
1479 99  4    6  1
1480 99  3   14  1
1481 99  4    8  1
1482 99  5   13  1
1483 99  2    0  1
1484 99  4    7  1
1485 99  4    7  1
1486 99  1    0  1
1487 99  2    8  1
1488 99  4   10  1
1489 99  2    3  1
1490 99  2    0  1
1491 99  4    8  1
1492 99  1    8  1
1493 end data.
1494
1495
1496 variable label years 'Years expected'.
1497 variable label animal 'Animal Genus'.
1498
1499 add value labels animal 1 'Animal 1' 2 'Animal 2' 3 'Animal 3' 4 'Animal 4' 5 'Animal 5'.
1500
1501 npar tests
1502      /median (7) = years by animal (1, 5)
1503      .
1504 ])
1505
1506
1507 AT_CHECK([pspp -O format=csv median2.sps], [0], [dnl
1508 Table: Frequencies
1509 ,,Animal Genus,,,,
1510 ,,Animal 1,Animal 2,Animal 3,Animal 4,Animal 5
1511 Years expected,> Median,2,1,2,3,4
1512 ,≤ Median,2,4,3,6,1
1513
1514 Table: Test Statistics
1515 ,N,Median,Chi-Square,df,Asymp. Sig.
1516 Years expected,28,7.000,4.317,4,.365
1517 ])
1518
1519 AT_CLEANUP
1520
1521
1522 AT_SETUP([NPAR TESTS Median Test (two sample)])
1523
1524 AT_DATA([median3.sps], [dnl
1525 set format F12.3.
1526 data list notable list /xx * animal * years * w *.
1527 begin data
1528 99  1   10  1
1529 99  4    1  1
1530 99  5   11  1
1531 99  5   10  1
1532 99  3    7  1
1533 99  3   14  1
1534 99  2    3  1
1535 99  1    1  1
1536 99  4    7  1
1537 99  5   12  1
1538 99  3    6  1
1539 99  4    1  1
1540 99  3    5  1
1541 99  5    7  1
1542 99  4    6  1
1543 99  3   14  1
1544 99  4    8  1
1545 99  5   13  1
1546 99  2    0  1
1547 99  4    7  1
1548 99  4    7  1
1549 99  1    0  1
1550 99  2    8  1
1551 99  4   10  1
1552 99  2    3  1
1553 99  2    0  1
1554 99  4    8  1
1555 99  1    8  1
1556 end data.
1557
1558
1559 variable label years 'Years expected'.
1560 variable label animal 'Animal Genus'.
1561
1562 add value labels animal 1 'Animal 1' 2 'Animal 2' 3 'Animal 3' 4 'Animal 4' 5 'Animal 5'.
1563
1564 npar tests
1565      /median (7) = xx years by animal (5, 1)
1566      .
1567 ])
1568
1569
1570 AT_CHECK([pspp -O format=csv median3.sps], [0], [dnl
1571 Table: Frequencies
1572 ,,Animal Genus,
1573 ,,Animal 1,Animal 5
1574 xx,> Median,4,5
1575 ,≤ Median,0,0
1576 Years expected,> Median,2,4
1577 ,≤ Median,2,1
1578
1579 Table: Test Statistics
1580 ,N,Median,Chi-Square,df,Asymp. Sig.
1581 xx,9,7.000,NaN,1,NaN
1582 Years expected,9,7.000,.900,1,.343
1583 ])
1584
1585 AT_CLEANUP