table |
Construct a grouped frequency table, with recoding |
table |
Visualizing Categorical Data: table
$Version: 1.1 (17 Nov 2000)
Michael Friendly
York University
Construct a grouped frequency table, with recoding
The TABLE macro constructs a grouped frequency table suitable for input to
the MOSAIC or MOSMAT macros. The input data may be individual observations,
or a contingency table, which may be collapsed to fewer variables. Factor
variables may be converted to character using user-supplied formats.
The TABLE macro takes 7 keyword arguments. The VAR= parameter is required.
- DATA=
-
The name of the input dataset. [Default:
DATA=_LAST_
]
- VAR=
-
Names of all factor (classification) variables to be included in the output
dataset. The observations are summed over any other factors, weighted by
the WEIGHT= variable, if any.
- CHAR=
-
If non-blank, forces the VAR= variables to be converted to character variables (using formatted values)
in the output dataset. If CHAR= a numeric value (e.g.,
CHAR=8
), it specifies the length of each character variable; otherwise, the
character variables default to length 16.
- WEIGHT=
-
Name of a frequency variable, if the input dataset is already in frequency
form. If not specified, each observation is assumed to be one case.
- ORDER=
-
Specifies the order of the variable levels used in the PROC FREQ step.
ORDER=INTERNAL|FREQ|DATA|
FORMATTED
are valid option values.
- FORMAT=
-
A list of
variable(s),
format pairs (suitable for a FORMAT
statement). The FORMAT= option may be used to recode the values of any of the VAR= variables.
- OUT=
-
The name of output dataset. The variables in the output dataset are the VAR= variables, plus COUNT, the frequency variable for each cell. [Default:
OUT=TABLE
]
None of the factor variables may be named COUNT
.
This example reads a three-way frequency table (gender x admit x dept),
where admit and dept are numeric variables, and collapses it to a two-way
table, with Gender and Admit as character variables.
%include vcd(table); *-- or include in an autocall library;
%include vcd(mosaic);
%include data(berkeley);
%table(data=berkeley, var=gender admit, weight=freq, char=Y,
format=admit admit. gender $sex., order=data, out=berk2);
%mosaic(data=berk2, var=Gender Admit);
The formats admit.
and $sex.
are created with PROC FORMAT:
proc format;
value admit 1='Admitted' 0='Rejected';
value $sex 'M'='Male' 'F'='Female';
See also
lags Macro for lag sequential analysis
mosaic Macro interface for mosaic displays
mosmat Macro interface for mosaic matrices
sort Generalized dataset sorting by format or statistic