15.7.9.3 标度缺失值
/SMISSING {VARIABLE _|_ LISTWISE}
SMISSING 子命令必须位于第一个 TABLE 子命令之前,用于控制生成所有输出表时对标度变量缺失值的处理方式。SMISSING 是可选的。
使用默认的 SMISSING=VARIABLE 时,缺失值按变量逐个排除。使用 SMISSING=LISTWISE 时,当堆叠的标度变量与分类变量嵌套在一起时,任一标度变量的缺失值都会导致该个案在所有这些变量中被排除。
作为示例,考虑以下数据集,其中 ‘x’ 是分类变量,‘y’ 和 ‘z’ 是标度变量:
| x | y | z |
|---|---|---|
| 1 | . | 40.00 |
| 1 | 10.00 | 50.00 |
| 1 | 20.00 | 60.00 |
| 1 | 30.00 | . |
在默认缺失值处理下,‘y’ 的均值为 20(基于取值 10、20 和 30),‘z’ 的均值为 50(基于 40、50 和 60):
CTABLES /TABLE (y + z) > x.
| Mean | |||
|---|---|---|---|
| y | x | 1 | 20.00 |
| z | x | 1 | 50.00 |
通过添加 SMISSING=LISTWISE,只会考虑 ‘y’ 和 ‘z’ 都非缺失的个案,因此 ‘y’ 的均值变为 15(10 和 20 的平均),‘z’ 的均值变为 55(50 和 60 的平均):
CTABLES /SMISSING LISTWISE /TABLE (y + z) > x.
| Mean | |||
|---|---|---|---|
| y | x | 1 | 15.00 |
| z | x | 1 | 55.00 |
即使使用 SMISSING=LISTWISE,如果 ‘y’ 和 ‘z’ 分别与 ‘x’ 单独嵌套(而不是使用单个 ‘>’ 运算符),缺失值仍会恢复为按变量逐个考虑:
CTABLES /SMISSING LISTWISE /TABLE (y > x) + (z > x).
| Mean | |||
|---|---|---|---|
| y | x | 1 | 20.00 |
| z | x | 1 | 50.00 |