Overview (LEAVE command)
Normally, the program reinitializes variables
each time it prepares to read a new case. LEAVE
suppresses reinitialization and retains the current
value of the specified variable or variables when the program reads
the next case. It also sets the initial value received by a numeric
variable to 0 instead of system-missing. LEAVE
is frequently used with COMPUTE
to create a variable to store an accumulating
sum. LEAVE
is also used to spread
a variable’s values across multiple cases when VECTOR
is used within an input program to
restructure a data file.
LEAVE
cannot
be used with scratch variables. See the topic Scratch Variables for more information.
Basic Specification
The basic specification is the variable(s) whose values are not to be reinitialized as each new case is read.
Syntax Rules
- Variables named
on
LEAVE
must be new variables that do not already exist in the active dataset prior to the transformation block that defines them, but they must be defined in the transformation block prior to theLEAVE
command that specifies them. See the topic Examples (LEAVE command) for more information. - Variables named on
LEAVE
cannot be scratch variables (but scratch variables can be used to obtain functionality equivalent toLEAVE
). See the topic Scratch Variables for more information. - Multiple variables can be named. The keyword
TO
can be used to refer to a list of consecutive variables. - String and numeric variables can be
specified on the same
LEAVE
command.
Operations
- Numeric variables named on
LEAVE
are initialized to 0 for the first case, and string variables are initialized to blanks. These variables are not reinitialized when new cases are read.