SAMPLE: Convert test to Autotest framework.
[pspp-builds.git] / doc / statistics.texi
1 @node Statistics
2 @chapter Statistics
3
4 This chapter documents the statistical procedures that PSPP supports so
5 far.
6
7 @menu
8 * DESCRIPTIVES::                Descriptive statistics.
9 * FREQUENCIES::                 Frequency tables.
10 * EXAMINE::                     Testing data for normality.
11 * CORRELATIONS::                Correlation tables.
12 * CROSSTABS::                   Crosstabulation tables.
13 * FACTOR::                      Factor analysis and Principal Components analysis
14 * NPAR TESTS::                  Nonparametric tests.
15 * T-TEST::                      Test hypotheses about means.
16 * ONEWAY::                      One way analysis of variance.
17 * RANK::                        Compute rank scores.
18 * REGRESSION::                  Linear regression.
19 * RELIABILITY::                 Reliability analysis.
20 * ROC::                         Receiver Operating Characteristic.
21 @end menu
22
23 @node DESCRIPTIVES
24 @section DESCRIPTIVES
25
26 @vindex DESCRIPTIVES
27 @display
28 DESCRIPTIVES
29         /VARIABLES=var_list
30         /MISSING=@{VARIABLE,LISTWISE@} @{INCLUDE,NOINCLUDE@}
31         /FORMAT=@{LABELS,NOLABELS@} @{NOINDEX,INDEX@} @{LINE,SERIAL@}
32         /SAVE
33         /STATISTICS=@{ALL,MEAN,SEMEAN,STDDEV,VARIANCE,KURTOSIS,
34                      SKEWNESS,RANGE,MINIMUM,MAXIMUM,SUM,DEFAULT,
35                      SESKEWNESS,SEKURTOSIS@}
36         /SORT=@{NONE,MEAN,SEMEAN,STDDEV,VARIANCE,KURTOSIS,SKEWNESS,
37                RANGE,MINIMUM,MAXIMUM,SUM,SESKEWNESS,SEKURTOSIS,NAME@}
38               @{A,D@}
39 @end display
40
41 The @cmd{DESCRIPTIVES} procedure reads the active file and outputs
42 descriptive
43 statistics requested by the user.  In addition, it can optionally
44 compute Z-scores.
45
46 The VARIABLES subcommand, which is required, specifies the list of
47 variables to be analyzed.  Keyword VARIABLES is optional.
48
49 All other subcommands are optional:
50
51 The MISSING subcommand determines the handling of missing variables.  If
52 INCLUDE is set, then user-missing values are included in the
53 calculations.  If NOINCLUDE is set, which is the default, user-missing
54 values are excluded.  If VARIABLE is set, then missing values are
55 excluded on a variable by variable basis; if LISTWISE is set, then
56 the entire case is excluded whenever any value in that case has a
57 system-missing or, if INCLUDE is set, user-missing value.
58
59 The FORMAT subcommand affects the output format.  Currently the
60 LABELS/NOLABELS and NOINDEX/INDEX settings are not used.  When SERIAL is
61 set, both valid and missing number of cases are listed in the output;
62 when NOSERIAL is set, only valid cases are listed.
63
64 The SAVE subcommand causes @cmd{DESCRIPTIVES} to calculate Z scores for all
65 the specified variables.  The Z scores are saved to new variables.
66 Variable names are generated by trying first the original variable name
67 with Z prepended and truncated to a maximum of 8 characters, then the
68 names ZSC000 through ZSC999, STDZ00 through STDZ09, ZZZZ00 through
69 ZZZZ09, ZQZQ00 through ZQZQ09, in that sequence.  In addition, Z score
70 variable names can be specified explicitly on VARIABLES in the variable
71 list by enclosing them in parentheses after each variable.
72
73 The STATISTICS subcommand specifies the statistics to be displayed:
74
75 @table @code
76 @item ALL
77 All of the statistics below.
78 @item MEAN
79 Arithmetic mean.
80 @item SEMEAN
81 Standard error of the mean.
82 @item STDDEV
83 Standard deviation.
84 @item VARIANCE
85 Variance.
86 @item KURTOSIS
87 Kurtosis and standard error of the kurtosis.
88 @item SKEWNESS
89 Skewness and standard error of the skewness.
90 @item RANGE
91 Range.
92 @item MINIMUM
93 Minimum value.
94 @item MAXIMUM
95 Maximum value.
96 @item SUM
97 Sum.
98 @item DEFAULT
99 Mean, standard deviation of the mean, minimum, maximum.
100 @item SEKURTOSIS
101 Standard error of the kurtosis.
102 @item SESKEWNESS
103 Standard error of the skewness.
104 @end table
105
106 The SORT subcommand specifies how the statistics should be sorted.  Most
107 of the possible values should be self-explanatory.  NAME causes the
108 statistics to be sorted by name.  By default, the statistics are listed
109 in the order that they are specified on the VARIABLES subcommand.  The A
110 and D settings request an ascending or descending sort order,
111 respectively.
112
113 @node FREQUENCIES
114 @section FREQUENCIES
115
116 @vindex FREQUENCIES
117 @display
118 FREQUENCIES
119         /VARIABLES=var_list
120         /FORMAT=@{TABLE,NOTABLE,LIMIT(limit)@}
121                 @{AVALUE,DVALUE,AFREQ,DFREQ@}
122         /MISSING=@{EXCLUDE,INCLUDE@}
123         /STATISTICS=@{DEFAULT,MEAN,SEMEAN,MEDIAN,MODE,STDDEV,VARIANCE,
124                      KURTOSIS,SKEWNESS,RANGE,MINIMUM,MAXIMUM,SUM,
125                      SESKEWNESS,SEKURTOSIS,ALL,NONE@}
126         /NTILES=ntiles
127         /PERCENTILES=percent@dots{}
128         /HISTOGRAM=[MINIMUM(x_min)] [MAXIMUM(x_max)] 
129                    [@{FREQ[(y_max)],PERCENT[(y_max)]@}] [@{NONORMAL,NORMAL@}]
130         /PIECHART=[MINIMUM(x_min)] [MAXIMUM(x_max)]
131                   [@{FREQ,PERCENT@}] [@{NOMISSING,MISSING@}]
132
133 (These options are not currently implemented.)
134         /BARCHART=@dots{}
135         /HBAR=@dots{}
136         /GROUPED=@dots{}
137 @end display
138
139 The @cmd{FREQUENCIES} procedure outputs frequency tables for specified
140 variables.
141 @cmd{FREQUENCIES} can also calculate and display descriptive statistics
142 (including median and mode) and percentiles,
143 @cmd{FREQUENCIES} can also output
144 histograms and pie charts.  
145
146 The VARIABLES subcommand is the only required subcommand.  Specify the
147 variables to be analyzed.
148
149 The FORMAT subcommand controls the output format.  It has several
150 possible settings:  
151
152 @itemize @bullet
153 @item
154 TABLE, the default, causes a frequency table to be output for every
155 variable specified.  NOTABLE prevents them from being output.  LIMIT
156 with a numeric argument causes them to be output except when there are
157 more than the specified number of values in the table.
158
159 @item
160 Normally frequency tables are sorted in ascending order by value.  This
161 is AVALUE.  DVALUE tables are sorted in descending order by value.
162 AFREQ and DFREQ tables are sorted in ascending and descending order,
163 respectively, by frequency count.
164 @end itemize
165
166 The MISSING subcommand controls the handling of user-missing values.
167 When EXCLUDE, the default, is set, user-missing values are not included
168 in frequency tables or statistics.  When INCLUDE is set, user-missing
169 are included.  System-missing values are never included in statistics,
170 but are listed in frequency tables.
171
172 The available STATISTICS are the same as available in @cmd{DESCRIPTIVES}
173 (@pxref{DESCRIPTIVES}), with the addition of MEDIAN, the data's median
174 value, and MODE, the mode.  (If there are multiple modes, the smallest
175 value is reported.)  By default, the mean, standard deviation of the
176 mean, minimum, and maximum are reported for each variable.
177
178 @cindex percentiles
179 PERCENTILES causes the specified percentiles to be reported.
180 The percentiles should  be presented at a list of numbers between 0
181 and 100 inclusive.  
182 The NTILES subcommand causes the percentiles to be reported at the
183 boundaries of the data set divided into the specified number of ranges.
184 For instance, @code{/NTILES=4} would cause quartiles to be reported.
185
186 @cindex histogram
187 The HISTOGRAM subcommand causes the output to include a histogram for
188 each specified numeric variable.  The X axis by default ranges from
189 the minimum to the maximum value observed in the data, but the MINIMUM
190 and MAXIMUM keywords can set an explicit range.  Specify NORMAL to
191 superimpose a normal curve on the histogram.  Histograms are not
192 created for string variables.
193
194 @cindex piechart
195 The PIECHART adds a pie chart for each variable to the data.  Each
196 slice represents one value, with the size of the slice proportional to
197 the value's frequency.  By default, all non-missing values are given
198 slices.  The MINIMUM and MAXIMUM keywords can be used to limit the
199 displayed slices to a given range of values.  The MISSING keyword adds
200 slices for missing values.
201
202 The FREQ and PERCENT options on HISTOGRAM and PIECHART are accepted
203 but not currently honored.
204
205 @node EXAMINE
206 @comment  node-name,  next,  previous,  up
207 @section EXAMINE
208 @vindex EXAMINE
209
210 @cindex Normality, testing for
211
212 @display
213 EXAMINE
214         VARIABLES=var_list [BY factor_list ]
215         /STATISTICS=@{DESCRIPTIVES, EXTREME[(n)], ALL, NONE@}
216         /PLOT=@{BOXPLOT, NPPLOT, HISTOGRAM, ALL, NONE@}
217         /CINTERVAL n
218         /COMPARE=@{GROUPS,VARIABLES@}
219         /ID=var_name
220         /@{TOTAL,NOTOTAL@}
221         /PERCENTILE=[value_list]=@{HAVERAGE, WAVERAGE, ROUND, AEMPIRICAL, EMPIRICAL @}
222         /MISSING=@{LISTWISE, PAIRWISE@} [@{EXCLUDE, INCLUDE@}] 
223                 [@{NOREPORT,REPORT@}]
224
225 @end display
226
227 The @cmd{EXAMINE} command is used to test how closely a distribution is to a 
228 normal distribution.  It also shows you outliers and extreme values.
229
230 The VARIABLES subcommand specifies the dependent variables and the
231 independent variable to use as factors for the analysis.   Variables
232 listed before the first BY keyword are the dependent variables.
233 The dependent variables may optionally be followed by a list of
234 factors which tell PSPP how to break down the analysis for each
235 dependent variable.  The format for each factor is 
236 @display
237 var [BY var].
238 @end display
239
240
241 The STATISTICS subcommand specifies the analysis to be done.  
242 DESCRIPTIVES will produce a table showing some parametric and
243 non-parametrics statistics.  EXTREME produces a table showing extreme
244 values of the dependent variable.  A number in parentheses determines
245 how many upper and lower extremes to show.  The default number is 5.
246
247
248 @cindex boxplot
249 @cindex histogram
250 @cindex npplot
251 The PLOT subcommand specifies which plots are to be produced if any.
252 Available plots are HISTOGRAM, NPPLOT and BOXPLOT.
253
254 The COMPARE subcommand is only relevant if producing boxplots, and it is only 
255 useful there is more than one dependent variable and at least one factor.   If 
256 /COMPARE=GROUPS is specified, then one plot per dependent variable is produced,
257 containing boxplots for all the factors.
258 If /COMPARE=VARIABLES is specified, then one plot per factor is produced, each 
259 each containing one boxplot per dependent variable.
260 If the /COMPARE subcommand is ommitted, then PSPP uses the default value of 
261 /COMPARE=GROUPS.
262  
263 The ID subcommand also pertains to boxplots.  If given, it must
264 specify a variable name.   Outliers and extreme cases plotted in
265 boxplots will be labelled with the case from that variable.  Numeric or
266 string variables are permissible.  If the ID subcommand is not given,
267 then the casenumber will be used for labelling.
268
269 The CINTERVAL subcommand specifies the confidence interval to use in
270 calculation of the descriptives command.  The default it 95%.
271
272 @cindex percentiles
273 The PERCENTILES subcommand specifies which percentiles are to be calculated, 
274 and which algorithm to use for calculating them.  The default is to
275 calculate the 5, 10, 25, 50, 75, 90, 95 percentiles using the
276 HAVERAGE algorithm.
277
278 The TOTAL and NOTOTAL subcommands are mutually exclusive.  If NOTOTAL
279 is given and factors have been specified in the VARIABLES subcommand,
280 then then statistics for the unfactored dependent variables are
281 produced in addition to the factored variables.  If there are no
282 factors specified then TOTAL and NOTOTAL have no effect.
283
284 @strong{Warning!}
285 If many dependent variable are given, or factors are given for which
286 there are many distinct values, then @cmd{EXAMINE} will produce a very
287 large quantity of output.
288
289 @node CORRELATIONS
290 @section CORRELATIONS
291
292 @vindex CORRELATIONS
293 @display
294 CORRELATIONS
295      /VARIABLES = varlist [ WITH varlist ]
296      [
297       .
298       .
299       .
300       /VARIABLES = varlist [ WITH varlist ]
301       /VARIABLES = varlist [ WITH varlist ]
302      ]
303
304      [ /PRINT=@{TWOTAIL, ONETAIL@} @{SIG, NOSIG@} ]
305      [ /STATISTICS=DESCRIPTIVES XPROD ALL]
306      [ /MISSING=@{PAIRWISE, LISTWISE@} @{INCLUDE, EXCLUDE@} ]
307 @end display    
308
309 @cindex correlation
310 The @cmd{CORRELATIONS} procedure produces tables of the Pearson correlation coefficient
311 for a set of variables.  The significance of the coefficients are also given.
312
313 At least one VARIABLES subcommand is required. If the WITH keyword is used, then a non-square
314 correlation table will be produced.
315 The variables preceding WITH, will be used as the rows of the table, and the variables following
316 will be the columns of the table.
317 If no WITH subcommand is given, then a square, symmetrical table using all variables is produced.
318
319
320 The @cmd{MISSING} subcommand determines the handling of missing variables.  
321 If INCLUDE is set, then user-missing values are included in the
322 calculations, but system-missing values are not.
323 If EXCLUDE is set, which is the default, user-missing
324 values are excluded as well as system-missing values. 
325 This is the default.
326
327 If LISTWISE is set, then the entire case is excluded from analysis
328 whenever any variable  specified in any @cmd{/VARIABLES} subcommand
329 contains a missing value.   
330 If PAIRWISE is set, then a case is considered missing only if either of the
331 values  for the particular coefficient are missing.
332 The default is PAIRWISE.
333
334 The PRINT subcommand is used to control how the reported significance values are printed.
335 If the TWOTAIL option is used, then a two-tailed test of significance is 
336 printed.  If the ONETAIL option is given, then a one-tailed test is used.
337 The default is TWOTAIL.
338
339 If the NOSIG option is specified, then correlation coefficients with significance less than
340 0.05 are highlighted.
341 If SIG is specified, then no highlighting is performed.  This is the default.
342
343 @cindex covariance
344 The STATISTICS subcommand requests additional statistics to be displayed.  The keyword 
345 DESCRIPTIVES requests that the mean, number of non-missing cases, and the non-biased
346 estimator of the standard deviation are displayed.
347 These statistics will be displayed in a separated table, for all the variables listed
348 in any /VARIABLES subcommand.
349 The XPROD keyword requests cross-product deviations and covariance estimators to 
350 be displayed for each pair of variables.
351 The keyword ALL is the union of DESCRIPTIVES and XPROD.
352
353 @node CROSSTABS
354 @section CROSSTABS
355
356 @vindex CROSSTABS
357 @display
358 CROSSTABS
359         /TABLES=var_list BY var_list [BY var_list]@dots{}
360         /MISSING=@{TABLE,INCLUDE,REPORT@}
361         /WRITE=@{NONE,CELLS,ALL@}
362         /FORMAT=@{TABLES,NOTABLES@}
363                 @{LABELS,NOLABELS,NOVALLABS@}
364                 @{PIVOT,NOPIVOT@}
365                 @{AVALUE,DVALUE@}
366                 @{NOINDEX,INDEX@}
367                 @{BOX,NOBOX@}
368         /CELLS=@{COUNT,ROW,COLUMN,TOTAL,EXPECTED,RESIDUAL,SRESIDUAL,
369                 ASRESIDUAL,ALL,NONE@}
370         /STATISTICS=@{CHISQ,PHI,CC,LAMBDA,UC,BTAU,CTAU,RISK,GAMMA,D,
371                      KAPPA,ETA,CORR,ALL,NONE@}
372         
373 (Integer mode.)
374         /VARIABLES=var_list (low,high)@dots{}
375 @end display
376
377 The @cmd{CROSSTABS} procedure displays crosstabulation
378 tables requested by the user.  It can calculate several statistics for
379 each cell in the crosstabulation tables.  In addition, a number of
380 statistics can be calculated for each table itself.
381
382 The TABLES subcommand is used to specify the tables to be reported.  Any
383 number of dimensions is permitted, and any number of variables per
384 dimension is allowed.  The TABLES subcommand may be repeated as many
385 times as needed.  This is the only required subcommand in @dfn{general
386 mode}.  
387
388 Occasionally, one may want to invoke a special mode called @dfn{integer
389 mode}.  Normally, in general mode, PSPP automatically determines
390 what values occur in the data.  In integer mode, the user specifies the
391 range of values that the data assumes.  To invoke this mode, specify the
392 VARIABLES subcommand, giving a range of data values in parentheses for
393 each variable to be used on the TABLES subcommand.  Data values inside
394 the range are truncated to the nearest integer, then assigned to that
395 value.  If values occur outside this range, they are discarded.  When it
396 is present, the VARIABLES subcommand must precede the TABLES
397 subcommand.
398
399 In general mode, numeric and string variables may be specified on
400 TABLES.  In integer mode, only numeric variables are allowed.
401
402 The MISSING subcommand determines the handling of user-missing values.
403 When set to TABLE, the default, missing values are dropped on a table by
404 table basis.  When set to INCLUDE, user-missing values are included in
405 tables and statistics.  When set to REPORT, which is allowed only in
406 integer mode, user-missing values are included in tables but marked with
407 an @samp{M} (for ``missing'') and excluded from statistical
408 calculations.
409
410 Currently the WRITE subcommand is ignored.
411
412 The FORMAT subcommand controls the characteristics of the
413 crosstabulation tables to be displayed.  It has a number of possible
414 settings:
415
416 @itemize @bullet
417 @item
418 TABLES, the default, causes crosstabulation tables to be output.
419 NOTABLES suppresses them.
420
421 @item
422 LABELS, the default, allows variable labels and value labels to appear
423 in the output.  NOLABELS suppresses them.  NOVALLABS displays variable
424 labels but suppresses value labels.
425
426 @item
427 PIVOT, the default, causes each TABLES subcommand to be displayed in a
428 pivot table format.  NOPIVOT causes the old-style crosstabulation format
429 to be used.
430
431 @item
432 AVALUE, the default, causes values to be sorted in ascending order.
433 DVALUE asserts a descending sort order.
434
435 @item
436 INDEX/NOINDEX is currently ignored.
437
438 @item
439 BOX/NOBOX is currently ignored.
440 @end itemize
441
442 The CELLS subcommand controls the contents of each cell in the displayed
443 crosstabulation table.  The possible settings are:
444
445 @table @asis
446 @item COUNT
447 Frequency count.
448 @item ROW
449 Row percent.
450 @item COLUMN
451 Column percent.
452 @item TOTAL
453 Table percent.
454 @item EXPECTED
455 Expected value.
456 @item RESIDUAL 
457 Residual.
458 @item SRESIDUAL
459 Standardized residual.
460 @item ASRESIDUAL
461 Adjusted standardized residual.
462 @item ALL
463 All of the above.
464 @item NONE
465 Suppress cells entirely.
466 @end table
467
468 @samp{/CELLS} without any settings specified requests COUNT, ROW,
469 COLUMN, and TOTAL.  If CELLS is not specified at all then only COUNT
470 will be selected.
471
472 The STATISTICS subcommand selects statistics for computation:
473
474 @table @asis
475 @item CHISQ
476 @cindex chisquare
477 @cindex chi-square
478
479 Pearson chi-square, likelihood ratio, Fisher's exact test, continuity
480 correction, linear-by-linear association.
481 @item PHI
482 Phi.
483 @item CC
484 Contingency coefficient.
485 @item LAMBDA
486 Lambda.
487 @item UC
488 Uncertainty coefficient.
489 @item BTAU
490 Tau-b.
491 @item CTAU
492 Tau-c.
493 @item RISK
494 Risk estimate.
495 @item GAMMA
496 Gamma.
497 @item D
498 Somers' D.
499 @item KAPPA
500 Cohen's Kappa.
501 @item ETA
502 Eta.
503 @item CORR
504 Spearman correlation, Pearson's r.
505 @item ALL
506 All of the above.
507 @item NONE
508 No statistics.
509 @end table
510
511 Selected statistics are only calculated when appropriate for the
512 statistic.  Certain statistics require tables of a particular size, and
513 some statistics are calculated only in integer mode.
514
515 @samp{/STATISTICS} without any settings selects CHISQ.  If the
516 STATISTICS subcommand is not given, no statistics are calculated.
517
518 @strong{Please note:} Currently the implementation of CROSSTABS has the
519 followings bugs:
520
521 @itemize @bullet
522 @item
523 Pearson's R (but not Spearman) is off a little.
524 @item
525 T values for Spearman's R and Pearson's R are wrong.
526 @item
527 Significance of symmetric and directional measures is not calculated.
528 @item
529 Asymmetric ASEs and T values for lambda are wrong.
530 @item
531 ASE of Goodman and Kruskal's tau is not calculated.
532 @item
533 ASE of symmetric somers' d is wrong.
534 @item
535 Approximate T of uncertainty coefficient is wrong.
536 @end itemize
537
538 Fixes for any of these deficiencies would be welcomed.
539
540 @node FACTOR
541 @section FACTOR
542
543 @vindex FACTOR
544 @cindex factor analysis
545 @cindex principal components analysis
546 @cindex principal axis factoring
547 @cindex data reduction
548
549 @display
550 FACTOR  VARIABLES=var_list
551
552         [ /METHOD = @{CORRELATION, COVARIANCE@} ]
553
554         [ /EXTRACTION=@{PC, PAF@}] 
555
556         [ /ROTATION=@{VARIMAX, EQUAMAX, QUARTIMAX, NOROTATE@}]
557
558         [ /PRINT=[INITIAL] [EXTRACTION] [ROTATION] [UNIVARIATE] [CORRELATION] [COVARIANCE] [DET] [SIG] [ALL] [DEFAULT] ]
559
560         [ /PLOT=[EIGEN] ]
561
562         [ /FORMAT=[SORT] [BLANK(@var{n})] [DEFAULT] ]
563
564         [ /CRITERIA=[FACTORS(@var{n})] [MINEIGEN(@var{l})] [ITERATE(@var{m})] [ECONVERGE (@var{delta})] [DEFAULT] ]
565
566         [ /MISSING=[@{LISTWISE, PAIRWISE@}] [@{INCLUDE, EXCLUDE@}] ]
567 @end display
568
569 The FACTOR command performs Factor Analysis or Principal Axis Factoring on a dataset.  It may be used to find
570 common factors in the data or for data reduction purposes.
571
572 The VARIABLES subcommand is required.  It lists the variables which are to partake in the analysis.
573
574 The /EXTRACTION subcommand is used to specify the way in which factors (components) are extracted from the data.
575 If PC is specified, then Principal Components Analysis is used.  If PAF is specified, then Principal Axis Factoring is
576 used. By default Principal Components Analysis will be used.
577
578 The /ROTATION subcommand is used to specify the method by which the extracted solution will be rotated.
579 Three methods are available: VARIMAX (which is the default), EQUAMAX, and QUARTIMAX.
580 If don't want any rotation to be performed, the word NOROTATE will prevent the command from performing any
581 rotation on the data. Oblique rotations are not supported.
582
583 The /METHOD subcommand should be used to determine whether the covariance matrix or the correlation matrix of the data is
584 to be analysed.  By default, the correlation matrix is analysed.
585
586 The /PRINT subcommand may be used to select which features of the analysis are reported:
587
588 @itemize
589 @item UNIVARIATE
590       A table of mean values, standard deviations and total weights are printed.
591 @item INITIAL
592       Initial communalities and eigenvalues are printed.
593 @item EXTRACTION
594       Extracted communalities and eigenvalues are printed.
595 @item ROTATION
596       Rotated communalities and eigenvalues are printed.
597 @item CORRELATION
598       The correlation matrix is printed.
599 @item COVARIANCE
600       The covariance matrix is printed.
601 @item DET
602       The determinant of the correlation or covariance matrix is printed.
603 @item SIG
604       The significance of the elements of correlation matrix is printed.
605 @item ALL
606       All of the above are printed.
607 @item DEFAULT
608       Identical to INITIAL and EXTRACTION.
609 @end itemize
610
611 If /PLOT=EIGEN is given, then a ``Scree'' plot of the eigenvalues will be printed.  This can be useful for visualising
612 which factors (components) should be retained.
613
614 The /FORMAT subcommand determined how data are to be displayed in loading matrices.  If SORT is specified, then the variables
615 are sorted in descending order of significance.  If BLANK(@var{n}) is specified, then coefficients whose absolute value is less
616 than @var{n} will not be printed.  If the keyword DEFAULT is given, or if no /FORMAT subcommand is given, then no sorting is 
617 performed, and all coefficients will be printed.
618
619 The /CRITERIA subcommand is used to specify how the number of extracted factors (components) are chosen.  If FACTORS(@var{n}) is
620 specified, where @var{n} is an integer, then @var{n} factors will be extracted.  Otherwise, the MINEIGEN setting will
621 be used.  MINEIGEN(@var{l}) requests that all factors whose eigenvalues are greater than or equal to @var{l} are extracted.
622 The default value of @var{l} is 1.    The ECONVERGE and ITERATE settings have effect only when iterative algorithms for factor
623 extraction (such as Principal Axis Factoring) are used.   ECONVERGE(@var{delta}) specifies that iteration should cease when
624 the maximum absolute value of the communality estimate between one iteration and the previous is less than @var{delta}. The
625 default value of @var{delta} is 0.001.
626 The ITERATE(@var{m}) setting sets the maximum number of iterations to @var{m}.  The default value of @var{m} is 25.
627
628 The @cmd{MISSING} subcommand determines the handling of missing variables.  
629 If INCLUDE is set, then user-missing values are included in the
630 calculations, but system-missing values are not.
631 If EXCLUDE is set, which is the default, user-missing
632 values are excluded as well as system-missing values. 
633 This is the default.
634 If LISTWISE is set, then the entire case is excluded from analysis
635 whenever any variable  specified in the @cmd{VARIABLES} subcommand
636 contains a missing value.   
637 If PAIRWISE is set, then a case is considered missing only if either of the
638 values  for the particular coefficient are missing.
639 The default is LISTWISE.
640  
641
642 @node NPAR TESTS
643 @section NPAR TESTS
644
645 @vindex NPAR TESTS
646 @cindex nonparametric tests
647
648 @display 
649 NPAR TESTS
650      
651      nonparametric test subcommands
652      .
653      .
654      .
655      
656      [ /STATISTICS=@{DESCRIPTIVES@} ]
657
658      [ /MISSING=@{ANALYSIS, LISTWISE@} @{INCLUDE, EXCLUDE@} ]
659
660      [ /METHOD=EXACT [ TIMER [(n)] ] ]
661 @end display
662
663 NPAR TESTS performs nonparametric tests. 
664 Non parametric tests make very few assumptions about the distribution of the 
665 data.
666 One or more tests may be specified by using the corresponding subcommand.
667 If the /STATISTICS subcommand is also specified, then summary statistics are 
668 produces for each variable that is the subject of any test.
669
670 Certain tests may take a long time to execute, if an exact figure is required.
671 Therefore, by default asymptotic approximations are used unless the
672 subcommand /METHOD=EXACT is specified.  
673 Exact tests give more accurate results, but may take an unacceptably long 
674 time to perform.  If the TIMER keyword is used, it sets a maximum time,
675 after which the test will be abandoned, and a warning message printed.
676 The time, in minutes, should be specified in parentheses after the TIMER keyword.
677 If the TIMER keyword is given without this figure, then a default value of 5 minutes 
678 is used.
679
680
681 @menu
682 * BINOMIAL::                Binomial Test
683 * CHISQUARE::               Chisquare Test
684 * WILCOXON::                Wilcoxon Signed Ranks Test
685 * SIGN::                    The Sign Test
686 @end menu
687
688
689 @node    BINOMIAL
690 @subsection Binomial test
691 @vindex BINOMIAL
692 @cindex binomial test
693
694 @display 
695      [ /BINOMIAL[(p)]=var_list[(value1[, value2)] ] ]
696 @end display 
697
698 The /BINOMIAL subcommand compares the observed distribution of a dichotomous 
699 variable with that of a binomial distribution.
700 The variable @var{p} specifies the test proportion of the binomial 
701 distribution.  
702 The default value of 0.5 is assumed if @var{p} is omitted.
703
704 If a single value appears after the variable list, then that value is
705 used as the threshold to partition the observed values. Values less
706 than or equal to the threshold value form the first category.  Values
707 greater than the threshold form the second category. 
708
709 If two values appear after the variable list, then they will be used
710 as the values which a variable must take to be in the respective
711 category. 
712 Cases for which a variable takes a value equal to neither of the specified  
713 values, take no part in the test for that variable.
714
715 If no values appear, then the variable must assume dichotomous
716 values.
717 If more than two distinct, non-missing values for a variable
718 under test are encountered then an error occurs.
719
720 If the test proportion is equal to 0.5, then a two tailed test is
721 reported.   For any other test proportion, a one tailed test is
722 reported.   
723 For one tailed tests, if the test proportion is less than
724 or equal to the observed proportion, then the significance of
725 observing the observed proportion or more is reported.
726 If the test proportion is more than the observed proportion, then the
727 significance of observing the observed proportion or less is reported.
728 That is to say, the test is always performed in the observed
729 direction. 
730
731 PSPP uses a very precise approximation to the gamma function to
732 compute the binomial significance.  Thus, exact results are reported
733 even for very large sample sizes.
734
735
736
737 @node    CHISQUARE
738 @subsection Chisquare Test
739 @vindex CHISQUARE
740 @cindex chisquare test
741
742
743 @display
744      [ /CHISQUARE=var_list[(lo,hi)] [/EXPECTED=@{EQUAL|f1, f2 @dots{} fn@}] ]
745 @end display 
746
747
748 The /CHISQUARE subcommand produces a chi-square statistic for the differences 
749 between the expected and observed frequencies of the categories of a variable. 
750 Optionally, a range of values may appear after the variable list.  
751 If a range is given, then non integer values are truncated, and values
752 outside the  specified range are excluded from the analysis.
753
754 The /EXPECTED subcommand specifies the expected values of each
755 category.  
756 There must be exactly one non-zero expected value, for each observed
757 category, or the EQUAL keywork must be specified.
758 You may use the notation @var{n}*@var{f} to specify @var{n}
759 consecutive expected categories all taking a frequency of @var{f}.
760 The frequencies given are proportions, not absolute frequencies.  The
761 sum of the frequencies need not be 1.
762 If no /EXPECTED subcommand is given, then then equal frequencies 
763 are expected.
764
765 @node WILCOXON
766 @subsection Wilcoxon Matched Pairs Signed Ranks Test
767 @comment  node-name,  next,  previous,  up
768 @vindex WILCOXON
769 @cindex wilcoxon matched pairs signed ranks test
770
771 @display
772      [ /WILCOXON varlist [ WITH varlist [ (PAIRED) ]]]
773 @end display
774
775 The /WILCOXON subcommand tests for differences between medians of the 
776 variables listed.
777 The test does not make any assumptions about the variances of the samples.
778 It does however assume that the distribution is symetrical.
779
780 If the @code{WITH} keyword is omitted, then tests for all
781 combinations of the listed variables are performed.
782 If the @code{WITH} keyword is given, and the @code{(PAIRED)} keyword
783 is also given, then the number of variables preceding @code{WITH}
784 must be the same as the number following it.
785 In this case, tests for each respective pair of variables are
786 performed.
787 If the @code{WITH} keyword is given, but the
788 @code{(PAIRED)} keyword is omitted, then tests for each combination
789 of variable preceding @code{WITH} against variable following
790 @code{WITH} are performed.
791
792
793 @node SIGN
794 @subsection Sign Test
795 @vindex SIGN
796 @cindex sign test
797
798 @display
799      [ /SIGN varlist [ WITH varlist [ (PAIRED) ]]]
800 @end display
801
802 The /SIGN subcommand tests for differences between medians of the 
803 variables listed.
804 The test does not make any assumptions about the
805 distribution of the data.
806
807 If the @code{WITH} keyword is omitted, then tests for all
808 combinations of the listed variables are performed.
809 If the @code{WITH} keyword is given, and the @code{(PAIRED)} keyword
810 is also given, then the number of variables preceding @code{WITH}
811 must be the same as the number following it.
812 In this case, tests for each respective pair of variables are
813 performed.
814 If the @code{WITH} keyword is given, but the
815 @code{(PAIRED)} keyword is omitted, then tests for each combination
816 of variable preceding @code{WITH} against variable following
817 @code{WITH} are performed.
818
819 @node T-TEST
820 @comment  node-name,  next,  previous,  up
821 @section T-TEST
822
823 @vindex T-TEST
824
825 @display
826 T-TEST
827         /MISSING=@{ANALYSIS,LISTWISE@} @{EXCLUDE,INCLUDE@}
828         /CRITERIA=CIN(confidence)
829
830
831 (One Sample mode.)
832         TESTVAL=test_value
833         /VARIABLES=var_list
834
835
836 (Independent Samples mode.)
837         GROUPS=var(value1 [, value2])
838         /VARIABLES=var_list
839
840
841 (Paired Samples mode.)
842         PAIRS=var_list [WITH var_list [(PAIRED)] ]
843
844 @end display
845
846
847 The @cmd{T-TEST} procedure outputs tables used in testing hypotheses about 
848 means.  
849 It operates in one of three modes:
850 @itemize
851 @item One Sample mode.
852 @item Independent Groups mode.
853 @item Paired mode.
854 @end itemize
855
856 @noindent
857 Each of these modes are described in more detail below.
858 There are two optional subcommands which are common to all modes.
859
860 The @cmd{/CRITERIA} subcommand tells PSPP the confidence interval used
861 in the tests.  The default value is 0.95.
862
863
864 The @cmd{MISSING} subcommand determines the handling of missing
865 variables.  
866 If INCLUDE is set, then user-missing values are included in the
867 calculations, but system-missing values are not.
868 If EXCLUDE is set, which is the default, user-missing
869 values are excluded as well as system-missing values. 
870 This is the default.
871
872 If LISTWISE is set, then the entire case is excluded from analysis
873 whenever any variable  specified in the @cmd{/VARIABLES}, @cmd{/PAIRS} or 
874 @cmd{/GROUPS} subcommands contains a missing value.   
875 If ANALYSIS is set, then missing values are excluded only in the analysis for
876 which they would be needed. This is the default.
877
878
879 @menu
880 * One Sample Mode::             Testing against a hypothesised mean
881 * Independent Samples Mode::    Testing two independent groups for equal mean
882 * Paired Samples Mode::         Testing two interdependent groups for equal mean
883 @end menu
884
885 @node One Sample Mode
886 @subsection One Sample Mode
887
888 The @cmd{TESTVAL} subcommand invokes the One Sample mode.
889 This mode is used to test a population mean against a hypothesised
890 mean. 
891 The value given to the @cmd{TESTVAL} subcommand is the value against
892 which you wish to test.
893 In this mode, you must also use the @cmd{/VARIABLES} subcommand to
894 tell PSPP which variables you wish to test.
895
896 @node Independent Samples Mode
897 @comment  node-name,  next,  previous,  up
898 @subsection Independent Samples Mode
899
900 The @cmd{GROUPS} subcommand invokes Independent Samples mode or
901 `Groups' mode. 
902 This mode is used to test whether two groups of values have the
903 same population mean.
904 In this mode, you must also use the @cmd{/VARIABLES} subcommand to
905 tell PSPP the dependent variables you wish to test.
906
907 The variable given in the @cmd{GROUPS} subcommand is the independent
908 variable which determines to which group the samples belong.
909 The values in parentheses are the specific values of the independent
910 variable for each group.
911 If the parentheses are omitted and no values are given, the default values 
912 of 1.0 and 2.0 are assumed.
913
914 If the independent variable is numeric, 
915 it is acceptable to specify only one value inside the parentheses.
916 If you do this, cases where the independent variable is
917 greater than or equal to this value belong to the first group, and cases
918 less than this value belong to the second group.
919 When using this form of the @cmd{GROUPS} subcommand, missing values in
920 the independent variable are excluded on a listwise basis, regardless
921 of whether @cmd{/MISSING=LISTWISE} was specified.
922
923
924 @node Paired Samples Mode
925 @comment  node-name,  next,  previous,  up
926 @subsection Paired Samples Mode
927
928 The @cmd{PAIRS} subcommand introduces Paired Samples mode.
929 Use this mode when repeated measures have been taken from the same
930 samples.
931 If the @code{WITH} keyword is omitted, then tables for all
932 combinations of variables given in the @cmd{PAIRS} subcommand are
933 generated. 
934 If the @code{WITH} keyword is given, and the @code{(PAIRED)} keyword
935 is also given, then the number of variables preceding @code{WITH}
936 must be the same as the number following it.
937 In this case, tables for each respective pair of variables are
938 generated.
939 In the event that the @code{WITH} keyword is given, but the
940 @code{(PAIRED)} keyword is omitted, then tables for each combination
941 of variable preceding @code{WITH} against variable following
942 @code{WITH} are generated.
943
944
945 @node ONEWAY
946 @comment  node-name,  next,  previous,  up
947 @section ONEWAY
948
949 @vindex ONEWAY
950 @cindex analysis of variance
951 @cindex ANOVA
952
953 @display
954 ONEWAY
955         [/VARIABLES = ] var_list BY var
956         /MISSING=@{ANALYSIS,LISTWISE@} @{EXCLUDE,INCLUDE@}
957         /CONTRAST= value1 [, value2] ... [,valueN]
958         /STATISTICS=@{DESCRIPTIVES,HOMOGENEITY@}
959
960 @end display
961
962 The @cmd{ONEWAY} procedure performs a one-way analysis of variance of
963 variables factored by a single independent variable.
964 It is used to compare the means of a population
965 divided into more than two groups. 
966
967 The dependent variables to be analysed should be given in the @code{VARIABLES}
968 subcommand.  
969 The list of variables must be followed by the @code{BY} keyword and
970 the name of the independent (or factor) variable.
971
972 You can use the @code{STATISTICS} subcommand to tell PSPP to display
973 ancilliary information.  The options accepted are:
974 @itemize
975 @item DESCRIPTIVES
976 Displays descriptive statistics about the groups factored by the independent
977 variable.
978 @item HOMOGENEITY
979 Displays the Levene test of Homogeneity of Variance for the
980 variables and their groups.
981 @end itemize
982
983 The @code{CONTRAST} subcommand is used when you anticipate certain
984 differences between the groups.
985 The subcommand must be followed by a list of numerals which are the
986 coefficients of the groups to be tested.
987 The number of coefficients must correspond to the number of distinct
988 groups (or values of the independent variable).
989 If the total sum of the coefficients are not zero, then PSPP will
990 display a warning, but will proceed with the analysis.
991 The @code{CONTRAST} subcommand may be given up to 10 times in order
992 to specify different contrast tests.
993 The @code{MISSING} subcommand defines how missing values are handled.
994 If LISTWISE is specified then cases which have missing values for 
995 the independent variable or any dependent variable will be ignored.
996 If ANALYSIS is specified, then cases will be ignored if the independent
997 variable is missing or if the dependent variable currently being 
998 analysed is missing.  The default is ANALYSIS.
999 A setting of EXCLUDE means that variables whose values are
1000 user-missing are to be excluded from the analysis. A setting of
1001 INCLUDE means they are to be included.  The default is EXCLUDE.
1002
1003
1004 @node RANK
1005 @comment  node-name,  next,  previous,  up
1006 @section RANK
1007
1008 @vindex RANK
1009 @display
1010 RANK
1011         [VARIABLES=] var_list [@{A,D@}] [BY var_list]
1012         /TIES=@{MEAN,LOW,HIGH,CONDENSE@}
1013         /FRACTION=@{BLOM,TUKEY,VW,RANKIT@}
1014         /PRINT[=@{YES,NO@}
1015         /MISSING=@{EXCLUDE,INCLUDE@}
1016
1017         /RANK [INTO var_list]
1018         /NTILES(k) [INTO var_list]
1019         /NORMAL [INTO var_list]
1020         /PERCENT [INTO var_list]
1021         /RFRACTION [INTO var_list]
1022         /PROPORTION [INTO var_list]
1023         /N [INTO var_list]
1024         /SAVAGE [INTO var_list]
1025 @end display
1026
1027 The @cmd{RANK} command ranks variables and stores the results into new
1028 variables. 
1029
1030 The VARIABLES subcommand, which is mandatory, specifies one or
1031 more variables whose values are to be ranked.  
1032 After each variable, @samp{A} or @samp{D} may appear, indicating that
1033 the variable is to be ranked in ascending or descending order.
1034 Ascending is the default.
1035 If a BY keyword appears, it should be followed by a list of variables
1036 which are to serve as group variables.  
1037 In this case, the cases are gathered into groups, and ranks calculated
1038 for each group.
1039
1040 The TIES subcommand specifies how tied values are to be treated.  The
1041 default is to take the mean value of all the tied cases.
1042
1043 The FRACTION subcommand specifies how proportional ranks are to be
1044 calculated.  This only has any effect if NORMAL or PROPORTIONAL rank
1045 functions are requested.
1046
1047 The PRINT subcommand may be used to specify that a summary of the rank
1048 variables created should appear in the output.
1049
1050 The function subcommands are RANK, NTILES, NORMAL, PERCENT, RFRACTION,
1051 PROPORTION and SAVAGE.  Any number of function subcommands may appear.
1052 If none are given, then the default is RANK.
1053 The NTILES subcommand must take an integer specifying the number of
1054 partitions into which values should be ranked.
1055 Each subcommand may be followed by the INTO keyword and a list of
1056 variables which are the variables to be created and receive the rank
1057 scores.  There may be as many variables specified as there are
1058 variables named on the VARIABLES subcommand.  If fewer are specified,
1059 then the variable names are automatically created.
1060
1061 The MISSING subcommand determines how user missing values are to be
1062 treated. A setting of EXCLUDE means that variables whose values are
1063 user-missing are to be excluded from the rank scores. A setting of
1064 INCLUDE means they are to be included.  The default is EXCLUDE.
1065
1066 @include regression.texi
1067
1068
1069 @node RELIABILITY
1070 @section RELIABILITY
1071
1072 @vindex RELIABILITY
1073 @display
1074 RELIABILITY
1075         /VARIABLES=var_list
1076         /SCALE (@var{name}) = @{var_list, ALL@}
1077         /MODEL=@{ALPHA, SPLIT[(N)]@}
1078         /SUMMARY=@{TOTAL,ALL@}
1079         /MISSING=@{EXCLUDE,INCLUDE@}
1080 @end display
1081
1082 @cindex Cronbach's Alpha
1083 The @cmd{RELIABILTY} command performs reliablity analysis on the data.
1084
1085 The VARIABLES subcommand is required. It determines the set of variables 
1086 upon which analysis is to be performed.
1087
1088 The SCALE subcommand determines which variables reliability is to be 
1089 calculated for.  If it is omitted, then analysis for all variables named
1090 in the VARIABLES subcommand will be used.
1091 Optionally, the @var{name} parameter may be specified to set a string name 
1092 for the scale.
1093
1094 The MODEL subcommand determines the type of analysis. If ALPHA is specified, 
1095 then Cronbach's Alpha is calculated for the scale.  If the model is SPLIT, 
1096 then the variables  are divided into 2 subsets.  An optional parameter 
1097 @var{N} may be given, to specify how many variables to be in the first subset.
1098 If @var{N} is omitted, then it defaults to one half of the variables in the 
1099 scale, or one half minus one if there are an odd number of variables.
1100 The default model is ALPHA.
1101
1102 By default, any cases with user missing, or system missing values for 
1103 any variables given 
1104 in the VARIABLES subcommand will be omitted from analysis.
1105 The MISSING subcommand determines whether user missing values are to 
1106 be included or excluded in the analysis.
1107
1108 The SUMMARY subcommand determines the type of summary analysis to be performed.
1109 Currently there is only one type: SUMMARY=TOTAL, which displays per-item
1110 analysis tested against the totals.
1111
1112
1113
1114 @node ROC
1115 @section ROC
1116
1117 @vindex ROC
1118 @cindex Receiver Operating Characterstic
1119 @cindex Area under curve
1120
1121 @display
1122 ROC     @var{var_list} BY @var{state_var} (@var{state_value})
1123         /PLOT = @{ CURVE [(REFERENCE)], NONE @}
1124         /PRINT = [ SE ] [ COORDINATES ]
1125         /CRITERIA = [ CUTOFF(@{INCLUDE,EXCLUDE@}) ]
1126           [ TESTPOS (@{LARGE,SMALL@}) ]
1127           [ CI (@var{confidence}) ]
1128           [ DISTRIBUTION (@{FREE, NEGEXPO @}) ]
1129         /MISSING=@{EXCLUDE,INCLUDE@}
1130 @end display
1131
1132
1133 The @cmd{ROC} command is used to plot the receiver operating characteristic curve 
1134 of a dataset, and to estimate the area under the curve.
1135 This is useful for analysing the efficacy of a variable as a predictor of a state of nature.
1136
1137 The mandatory @var{var_list} is the list of predictor variables.
1138 The variable @var{state_var} is the variable whose values represent the actual states, 
1139 and @var{state_value} is the value of this variable which represents the positive state.
1140
1141 The optional subcommand PLOT is used to determine if and how the ROC curve is drawn.
1142 The keyword CURVE means that the ROC curve should be drawn, and the optional keyword REFERENCE,
1143 which should be enclosed in parentheses, says that the diagonal reference line should be drawn.
1144 If the keyword NONE is given, then no ROC curve is drawn.
1145 By default, the curve is drawn with no reference line.
1146
1147 The optional subcommand PRINT determines which additional tables should be printed.
1148 Two additional tables are available. 
1149 The SE keyword says that standard error of the area under the curve should be printed as well as
1150 the area itself.
1151 In addition, a p-value under the null hypothesis that the area under the curve equals 0.5 will be
1152 printed.
1153 The COORDINATES keyword says that a table of coordinates of the ROC curve should be printed.
1154
1155 The CRITERIA subcommand has four optional parameters:
1156 @itemize @bullet
1157 @item The TESTPOS parameter may be LARGE or SMALL.
1158 LARGE is the default, and says that larger values in the predictor variables are to be 
1159 considered positive.  SMALL indicates that smaller values should be considered positive.
1160
1161 @item The CI parameter specifies the confidence interval that should be printed.
1162 It has no effect if the SE keyword in the PRINT subcommand has not been given.
1163
1164 @item The DISTRIBUTION parameter determines the method to be used when estimating the area
1165 under the curve.  
1166 There are two possibilities, @i{viz}: FREE and NEGEXPO.
1167 The FREE method uses a non-parametric estimate, and the NEGEXPO method a bi-negative 
1168 exponential distribution estimate.
1169 The NEGEXPO method should only be used when the number of positive actual states is
1170 equal to the number of negative actual states.
1171 The default is FREE.
1172
1173 @item The CUTOFF parameter is for compatibility and is ignored.
1174 @end itemize
1175
1176 The MISSING subcommand determines whether user missing values are to 
1177 be included or excluded in the analysis.  The default behaviour is to
1178 exclude them.
1179 Cases are excluded on a listwise basis; if any of the variables in @var{var_list} 
1180 or if the variable @var{state_var} is missing, then the entire case will be 
1181 excluded.
1182
1183