1 AT_BANNER([FREQUENCIES procedure])
3 AT_SETUP([FREQUENCIES string variable crash])
4 AT_DATA([frequencies.sps],
6 name (A8) value * quantity .
12 FREQUENCIES /VAR = name.
14 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
16 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
17 ,Cables ,1,100.00,100.00,100.00
22 # Tests for a bug where pspp would crash if two FREQUENCIES commands
23 # existed in a input file.
24 AT_SETUP([FREQUENCIES two runs crash])
25 AT_DATA([frequencies.sps],
26 [data list free /v1 v2.
34 frequencies v1 v2/statistics=none.
35 frequencies v1 v2/statistics=none.
37 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
39 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
40 ,.00,1,25.00,25.00,25.00
41 ,2.00,1,25.00,25.00,50.00
42 ,3.00,1,25.00,25.00,75.00
43 ,4.00,1,25.00,25.00,100.00
47 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
48 ,1.00,1,25.00,25.00,25.00
49 ,3.00,1,25.00,25.00,50.00
50 ,4.00,1,25.00,25.00,75.00
51 ,5.00,1,25.00,25.00,100.00
55 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
56 ,.00,1,25.00,25.00,25.00
57 ,2.00,1,25.00,25.00,50.00
58 ,3.00,1,25.00,25.00,75.00
59 ,4.00,1,25.00,25.00,100.00
63 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
64 ,1.00,1,25.00,25.00,25.00
65 ,3.00,1,25.00,25.00,50.00
66 ,4.00,1,25.00,25.00,75.00
67 ,5.00,1,25.00,25.00,100.00
72 # Tests for a bug where PSPP would crash when a FREQUENCIES command
73 # was used with the HTML output driver.
74 AT_SETUP([FREQUENCIES HTML output crash])
75 AT_DATA([frequencies.sps],
76 [data list free /v1 v2.
86 frequencies v1/statistics=none.
88 AT_CHECK([pspp -o - -O format=csv -o pspp.html frequencies.sps], [0],
97 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
98 ,.00,1,25.00,25.00,25.00
99 ,2.00,1,25.00,25.00,50.00
100 ,3.00,1,25.00,25.00,75.00
101 ,4.00,1,25.00,25.00,100.00
102 Total,,4,100.0,100.0,
104 AT_CHECK([test -s pspp.html])
107 # Tests for a bug which crashed PSPP when a piechart with too many
108 # segments was requested.
109 AT_SETUP([FREQUENCIES pie chart crash])
110 AT_DATA([frequencies.sps],
111 [data list list /x * w *.
128 frequencies /x /format=notable /statistics=none
131 # Cannot use the CSV driver for this because it does not output charts
133 AT_CHECK([pspp frequencies.sps], [0], [dnl
134 Reading free-form data from INLINE.
144 dnl Check that histogram subcommand runs wihout crashing
145 AT_SETUP([FREQUENCIES histogram crash])
146 AT_DATA([frequencies.sps],
147 [data list notable list /x * w *.
167 /histogram=minimum(0) maximum(50) percent(5) normal.
169 # Cannot use the CSV driver for this because it does not output charts
171 AT_CHECK([pspp -O format=pdf frequencies.sps], [0], [ignore])
174 # Tests for a bug which crashed PSPP when the median and a histogram
175 # were both requested.
176 AT_SETUP([FREQUENCIES median with histogram crash])
177 AT_DATA([frequencies.sps], [dnl
178 data list list notable /x.
183 frequencies /x /histogram /STATISTICS=median.
185 AT_CHECK([pspp -O format=csv frequencies.sps], [0], [ignore])
186 dnl Ignore output - No crash test.
189 # Tests for a bug which caused FREQUENCIES following TEMPORARY to
190 # crash (bug #11492).
191 AT_SETUP([FREQUENCIES crash after TEMPORARY])
192 AT_DATA([frequencies.sps],
193 [DATA LIST LIST /SEX (A1) X *.
212 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
213 [Table: Reading free-form data from INLINE.
219 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
220 ,12.00,1,25.00,25.00,25.00
221 ,13.00,1,25.00,25.00,50.00
222 ,21.00,1,25.00,25.00,75.00
223 ,31.00,1,25.00,25.00,100.00
224 Total,,4,100.0,100.0,
236 m4_define([FREQUENCIES_NTILES_OUTPUT],
252 AT_SETUP([FREQUENCIES basic percentiles])
253 AT_DATA([frequencies.sps],
254 [DATA LIST LIST notable /x * .
266 /PERCENTILES = 0 25 33.333 50 66.666 75 100.
268 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
269 [FREQUENCIES_NTILES_OUTPUT])
272 AT_SETUP([FREQUENCIES basic n-tiles])
273 AT_DATA([frequencies.sps],
274 [DATA LIST LIST notable /x * .
289 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
290 [FREQUENCIES_NTILES_OUTPUT])
293 AT_SETUP([FREQUENCIES compatibility percentiles])
294 AT_DATA([frequencies.sps],
295 [DATA LIST LIST notable /X * .
306 /ALGORITHM=COMPATIBLE
307 /PERCENTILES = 0 25 50 75 100.
309 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
311 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
312 ,1.00,1,20.00,20.00,20.00
313 ,2.00,1,20.00,20.00,40.00
314 ,3.00,1,20.00,20.00,60.00
315 ,4.00,1,20.00,20.00,80.00
316 ,5.00,1,20.00,20.00,100.00
317 Total,,5,100.0,100.0,
334 AT_SETUP([FREQUENCIES enhanced percentiles])
335 AT_DATA([frequencies.sps],
336 [DATA LIST LIST notable /X * .
347 /PERCENTILES = 0 25 50 75 100.
349 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
351 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
352 ,1.00,1,20.00,20.00,20.00
353 ,2.00,1,20.00,20.00,40.00
354 ,3.00,1,20.00,20.00,60.00
355 ,4.00,1,20.00,20.00,80.00
356 ,5.00,1,20.00,20.00,100.00
357 Total,,5,100.0,100.0,
374 AT_SETUP([FREQUENCIES enhanced percentiles, weighted])
375 AT_DATA([frequencies.sps],
376 [DATA LIST LIST notable /X * F *.
391 /PERCENTILES = 0 25 50 75 100.
393 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
395 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
396 ,1.00,2.00,20.00,20.00,20.00
397 ,2.00,2.00,20.00,20.00,40.00
398 ,3.00,2.00,20.00,20.00,60.00
399 ,4.00,2.00,20.00,20.00,80.00
400 ,5.00,2.00,20.00,20.00,100.00
401 Total,,10.00,100.0,100.0,
418 AT_SETUP([FREQUENCIES enhanced percentiles, weighted (2)])
419 AT_DATA([frequencies.sps],
420 [DATA LIST LIST notable /X * F *.
433 /PERCENTILES = 0 25 50 75 100.
435 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
437 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
438 ,1.00,1.00,16.67,16.67,16.67
439 ,3.00,2.00,33.33,33.33,50.00
440 ,4.00,1.00,16.67,16.67,66.67
441 ,5.00,2.00,33.33,33.33,100.00
442 Total,,6.00,100.0,100.0,
459 dnl Data for this test case from Fabio Bordignon <bordignon@demos.it>.
460 AT_SETUP([FREQUENCIES enhanced percentiles, weighted (3)])
461 AT_DATA([frequencies.sps],
462 [DATA LIST LIST notable /X * F *.
474 /PERCENTILES = 0 25 50 75 100.
476 AT_CHECK([pspp -O format=csv frequencies.sps], [0], [dnl
478 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
479 ,1.00,7.00,17.50,17.50,17.50
480 ,2.00,16.00,40.00,40.00,57.50
481 ,3.00,12.00,30.00,30.00,87.50
482 ,4.00,5.00,12.50,12.50,100.00
483 Total,,40.00,100.0,100.0,
500 AT_SETUP([FREQUENCIES enhanced percentiles, weighted, missing values])
501 AT_DATA([frequencies.sps],
502 [DATA LIST LIST notable /X * F *.
512 MISSING VALUE x (99.0) .
517 /PERCENTILES = 0 25 50 75 100.
520 AT_CHECK([pspp -O format=csv frequencies.sps], [0],
522 Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
523 ,1.00,1.00,10.00,16.67,16.67
524 ,3.00,2.00,20.00,33.33,50.00
525 ,4.00,1.00,10.00,16.67,66.67
526 ,5.00,2.00,20.00,33.33,100.00
527 ,99.00,4.00,40.00,Missing,
528 Total,,10.00,100.0,100.0,
545 AT_SETUP([FREQUENCIES dichotomous histogram])
546 AT_DATA([frequencies.sps], [dnl
547 data list notable list /d4 *.
575 AT_CHECK([pspp frequencies.sps], [0], [ignore])