Automatic variables are created automatically by the DATA step or
by DATA step statements. These variables are added to the program
data vector but are not output to the data set being created. The
values of automatic variables are retained from one iteration of the
DATA step to the next, rather than set to missing.
Automatic variables
that are created by specific statements are documented with those
statements. For examples, see the
BY Statement in SAS Statements: Reference, the
MODIFY Statement in SAS Statements: Reference, and
WINDOW Statement in SAS Statements: Reference.
Two automatic variables
are created by every DATA step: _N_ and _ERROR_.
is initially set to
1. Each time the DATA step loops past the DATA statement, the variable
_N_ increments by 1. The value of _N_ represents the number of times
the DATA step has iterated.
is 0 by default but
is set to 1 whenever an error is encountered, such as an input data
error, a conversion error, or a math error, as in division by 0 or
a floating point overflow. You can use the value of this variable
to help locate errors in data records and to print an error message
to the SAS log.
For example, either
of the two following statements writes to the SAS log, during each
iteration of the DATA step, the contents of an input record in which
an input error is encountered:
if _error_=1 then put _infile_;
if _error_ then put _infile_;