Next: COMPUTE, Previous: AGGREGATE, Up: Data Manipulation [Contents][Index]
AUTORECODE VARIABLES=src_vars INTO dest_vars
[ /DESCENDING ]
[ /PRINT ]
[ /GROUP ]
[ /BLANK = {VALID, MISSING} ]
The AUTORECODE procedure considers the n values that a variable
takes on and maps them onto values 1…n on a new numeric
variable.
Subcommand VARIABLES is the only required subcommand and must come
first. Specify VARIABLES, an equals sign (‘=’), a list of source
variables, INTO, and a list of target variables. There must the same
number of source and target variables. The target variables must not
already exist.
AUTORECODE ordinarily assigns each increasing non-missing value
of a source variable (for a string, this is based on character code
comparisons) to consecutive values of its target variable. For
example, the smallest non-missing value of the source variable is
recoded to value 1, the next smallest to 2, and so on. If the source
variable has user-missing values, they are recoded to
consecutive values just above the non-missing values. For example, if
a source variables has seven distinct non-missing values, then the
smallest missing value would be recoded to 8, the next smallest to 9,
and so on.
Use DESCENDING to reverse the sort order for non-missing
values, so that the largest non-missing value is recoded to 1, the
second-largest to 2, and so on. Even with DESCENDING,
user-missing values are still recoded in ascending order just above
the non-missing values.
The system-missing value is always recoded into the system-missing variable in target variables.
If a source value has a value label, then that value label is retained for the new value in the target variable. Otherwise, the source value itself becomes each new value’s label.
Variable labels are copied from the source to target variables.
PRINT is currently ignored.
The GROUP subcommand is relevant only if more than one variable is to be
recoded. It causes a single mapping between source and target values to
be used, instead of one map per variable. With GROUP,
user-missing values are taken from the first source variable that has
any user-missing values.
If /BLANK=MISSING is given, then string variables which contain only
whitespace are recoded as SYSMIS. If /BLANK=VALID is given then they
will be allocated a value like any other. /BLANK is not relevant
to numeric values. /BLANK=VALID is the default.
AUTORECODE is a procedure. It causes the data to be read.
Next: COMPUTE, Previous: AGGREGATE, Up: Data Manipulation [Contents][Index]