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
LEAVEmust 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 theLEAVEcommand that specifies them. See the topic Examples (LEAVE command) for more information. - Variables named on
LEAVEcannot 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
TOcan be used to refer to a list of consecutive variables. - String and numeric variables can be
specified on the same
LEAVEcommand.
Operations
- Numeric variables named on
LEAVEare initialized to 0 for the first case, and string variables are initialized to blanks. These variables are not reinitialized when new cases are read.