table Construct a grouped frequency table, with recoding table

Visualizing Categorical Data: table

$Version: 1.1 (17 Nov 2000)
Michael Friendly
York University

The table macro ( [download] get table.sas)

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.

Usage

The TABLE macro takes 7 keyword arguments. The VAR= parameter is required.

Parameters

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]

Limitations

None of the factor variables may be named COUNT.

Example

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