15.7.9.3 Scale Missing Values

/SMISSING {VARIABLE | LISTWISE}

The SMISSING subcommand, which must precede the first TABLE subcommand, controls treatment of missing values for scalar variables in producing all the output tables. SMISSING is optional.

With SMISSING=VARIABLE, which is the default, missing values are excluded on a variable-by-variable basis. With SMISSING=LISTWISE, when stacked scalar variables are nested together with a categorical variable, a missing value for any of the scalar variables causes the case to be excluded for all of them.

As an example, consider the following dataset, in which ‘x’ is a categorical variable and ‘y’ and ‘z’ are scale:

Data List
x y z
1 . 40.00
1 10.00 50.00
1 20.00 60.00
1 30.00 .

With the default missing-value treatment, ‘x’’s mean is 20, based on the values 10, 20, and 30, and ‘y’’s mean is 50, based on 40, 50, and 60:

CTABLES /TABLE (y + z) > x.
Custom Tables
Mean
y x 1 20.00
z x 1 50.00

By adding SMISSING=LISTWISE, only cases where ‘y’ and ‘z’ are both non-missing are considered, so ‘x’’s mean becomes 15, as the average of 10 and 20, and ‘y’’s mean becomes 55, the average of 50 and 60:

CTABLES /SMISSING LISTWISE /TABLE (y + z) > x.
Custom Tables
Mean
y x 1 15.00
z x 1 55.00

Even with SMISSING=LISTWISE, if ‘y’ and ‘z’ are separately nested with ‘x’, instead of using a single ‘>’ operator, missing values revert to being considered on a variable-by-variable basis:

CTABLES /SMISSING LISTWISE /TABLE (y > x) + (z > x).
Custom Tables
Mean
y x 1 20.00
z x 1 50.00