5.2.3 反转负向编码的变量
数据录入错误并非想要重新编码数据的唯一原因。示例文件 hotel.sav 包含从某特定酒店客户满意度调查中收集的数据。以下命令加载该文件并显示其变量及关联的数据:
PSPP> get file='/usr/local/share/pspp/examples/hotel.sav'.
PSPP> display dictionary.
它产生以下输出:
| 名称 | 位置 | 标签 | 测量水平 | 角色 | 宽度 | 对齐 | 打印格式 | 写入格式 |
|---|---|---|---|---|---|---|---|---|
| v1 | 1 | 我对服务水平感到满意 | 有序 | 输入 | 8 | 右 | F8.0 | F8.0 |
| v2 | 2 | 性价比良好 | 有序 | 输入 | 8 | 右 | F8.0 | F8.0 |
| v3 | 3 | 员工响应迟缓 | 有序 | 输入 | 8 | 右 | F8.0 | F8.0 |
| v4 | 4 | 我的问题得到了高效处理 | 有序 | 输入 | 8 | 右 | F8.0 | F8.0 |
| v5 | 5 | 房间内噪音太大 | 有序 | 输入 | 8 | 右 | F8.0 | F8.0 |
| 变量值 | 标签 | |||||||
| 我对服务水平感到满意 | 1 | 强烈不同意 | ||||||
| 2 | 不同意 | |||||||
| 3 | 无意见 | |||||||
| 4 | 同意 | |||||||
| 5 | 强烈同意 | |||||||
| 性价比良好 | 1 | 强烈不同意 | ||||||
| 2 | 不同意 | |||||||
| 3 | 无意见 | |||||||
| 4 | 同意 | |||||||
| 5 | 强烈同意 | |||||||
| 员工响应迟缓 | 1 | 强烈不同意 | ||||||
| 2 | 不同意 | |||||||
| 3 | 无意见 | |||||||
| 4 | 同意 | |||||||
| 5 | 强烈同意 | |||||||
| 我的问题得到了高效处理 | 1 | 强烈不同意 | ||||||
| 2 | 不同意 | |||||||
| 3 | 无意见 | |||||||
| 4 | 同意 | |||||||
| 5 | 强烈同意 | |||||||
| 房间内噪音太大 | 1 | 强烈不同意 | ||||||
| 2 | 不同意 | |||||||
| 3 | 无意见 | |||||||
| 4 | 同意 | |||||||
| 5 | 强烈同意 |
输出显示,所有变量 v1 到 v5 都按 5 点 Likert 量表测量,其中 1 表示“强烈不同意”,5 表示“强烈同意”。然而,某些问题表述为正向(v1、v2、v4),其他为负向(v3、v5)。为了进行有意义的分析,我们需要重新编码变量,使它们都按同一方向测量。我们可以使用 RECODE 命令,语法如下:
recode v3 (1 = 5) (2 = 4) (4 = 2) (5 = 1).
然而,更简单且更优雅的方法是使用 COMPUTE 命令(见 COMPUTE)。由于变量是范围 (1 … 5) 内的 Likert 变量,从 6 中减去它们的值即可起到反转作用:
compute var = 6 - var.
以下小节使用此技术重新编码变量 v3 和 v5。对两个变量都应用 COMPUTE 后,所有后续命令将使用反转后的值。