Overview (CROSSTABS command)
CROSSTABS produces contingency tables showing the joint distribution of two
or more variables that have a limited number of distinct values. The
frequency distribution of one variable is subdivided according to
the values of one or more variables. The unique combination of values
for two or more variables defines a cell.
CROSSTABS can
operate in two different modes: general and integer. Integer mode builds
some tables more efficiently but requires more specifications than
general mode. Some subcommand specifications and statistics are available
only in integer mode.
Options
Methods for building tables. To build tables in general mode, use the TABLES
subcommand. Integer mode requires the TABLES and VARIABLES
subcommands and minimum and maximum values for the variables.
Cell contents. By default, CROSSTABS displays only the number of cases in
each cell. You can request row, column, and total percentages, and also expected values and
residuals, by using the CELLS subcommand.
Statistics. In addition to the tables, you can obtain measures of association and tests of
hypotheses for each subtable using the STATISTICS subcommand.
Formatting options. With the FORMAT subcommand, you can control the display
order for categories in rows and columns of subtables and suppress crosstabulation. With the
SHOWDIM subcommand you can display a subset of the variables as table layers in the
crosstabulation table.
Writing and reproducing tables. You can write cell frequencies to a file and reproduce the
original tables with the WRITE subcommand.
Basic specification
In general mode, the basic specification is TABLES with a
table list. The keyword TABLES is required. In integer mode, the minimum
specification is the VARIABLES subcommand, specifying the variables to be used and
their value ranges, and the TABLES subcommand with a table list.
- The minimum table list specifies a list of row variables, the keyword
BY, and a list of column variables. - In integer mode, all variables must be numeric with integer values. In general mode, variables can be numeric (integer or non-integer) or string.
- The default table shows cell counts.
Subcommand order
- In general mode, subcommands can be specified in any order.
- In integer mode,
VARIABLESmust precedeTABLES. The keywordTABLESmust be explicitly specified.
Operations
- Integer mode builds tables more quickly but requires more workspace if a table has many empty cells.
- In integer mode, the
PROPandBPROPkeywords on theCELLScommand are ignored. If no other cell contents are requested, no table will be produced. - Statistics are calculated separately for each two-way table or two-way subtable. Missing values are reported for the table as a whole.
- In general mode, the keyword
TOon theTABLESsubcommand refers to the order of variables in the active dataset.ALLrefers to all variables in the active dataset. In integer mode,TOandALLrefer to the position and subset of variables specified on theVARIABLESsubcommand.
Limitations
The following limitations apply to CROSSTABS in general
mode:
- A maximum of 200 variables named or implied on the
TABLESsubcommand - A maximum of 1000 non-empty rows or columns for each table
- A maximum of 20 table lists per
CROSSTABScommand - A maximum of 10 dimensions (9
BYkeywords) per table - A maximum of 400 value labels displayed on any single table
The following limitations apply to CROSSTABS in integer
mode:
- A maximum of 100 variables named or implied on the
VARIABLESsubcommand - A maximum of 100 variables named or implied on the
TABLESsubcommand - A maximum of 1000 non-empty rows or columns for each table
- A maximum of 20 table lists per
CROSSTABScommand - A maximum of 8 dimensions (7
BYkeywords) per table - A maximum of 20 rows or columns of missing values when
REPORTis specified onMISSING - The minimum value that can be specified is –99,999
- The maximum value that can be specified is 999,999