5.2.1 识别不正确的数据
来自真实来源的数据很少完全没有错误。PSPP 有许多过程可用于帮助识别可能不正确的数据。
DESCRIPTIVES 命令(见 DESCRIPTIVES)用于为数据集生成简单的线性统计量。它也有助于识别数据中的潜在问题。示例文件 physiology.sav 包含对随机选择的一组健康成人进行的若干生理测量。但是,数据录入员在录入数据时犯了一些错误。以下示例说明了使用 DESCRIPTIVES 筛选此数据并识别错误值:
PSPP> get file='/usr/local/share/pspp/examples/physiology.sav'.
PSPP> descriptives sex, weight, height.
对于此示例,PSPP 产生以下输出:
| 个案数 | 均值 | 标准差 | 最小值 | 最大值 | |
|---|---|---|---|---|---|
| 受试者性别 | 40 | .45 | .50 | 男 | 女 |
| 体重(公斤) | 40 | 72.12 | 26.70 | -55.6 | 92.1 |
| 身高(毫米) | 40 | 1677.12 | 262.87 | 179 | 1903 |
| 有效 N(列表删除) | 40 | ||||
| 缺失 N(列表删除) | 0 |
输出中最有趣的列是最小值。weight 变量的最小值为小于零,这显然是错误的。同样,height 变量的最小值似乎非常低。事实上,它距离均值超过 5 个标准差,对于成年人来说是一个看似奇怪的身高。
我们可以通过发出额外的 EXAMINE 命令来更深入地研究这些差异:
PSPP> examine height, weight /statistics=extreme(3).
此命令产生以下额外输出(部分):
| 个案编号 | 值 | |||
|---|---|---|---|---|
| 身高(毫米) | 最高 | 1 | 14 | 1903 |
| 2 | 15 | 1884 | ||
| 3 | 12 | 1802 | ||
| 最低 | 1 | 30 | 179 | |
| 2 | 31 | 1598 | ||
| 3 | 28 | 1601 | ||
| 体重(公斤) | 最高 | 1 | 13 | 92.1 |
| 2 | 5 | 92.1 | ||
| 3 | 17 | 91.7 | ||
| 最低 | 1 | 38 | -55.6 | |
| 2 | 39 | 54.5 | ||
| 3 | 33 | 55.4 |
从这一新输出中,您可以看到 height 的最低值为 179(我们怀疑其是错误的),但第二低值为 1598,我们从 DESCRIPTIVES 中知道它在均值的一个标准差之内。同样,weight 的最低值为负,但其第二低值是合理的。这表明两个极端值是离群值,可能代表数据录入错误。
输出还标识了每个极端值的个案编号,因此我们可以看到个案 30 和 38 是具有错误值的个案。