2.2.8 变量的重新赋值

对于数值型变量,用户在数据编辑和整理过程中可以对某些变量的一定取值范围内的观测量进行重新赋值。例如,在学生成绩中,由于统计的失误,导致了一部分学生的成绩需要更正,此时我们将用到变量的赋值操作。变量的重新赋值有两种方式:一种是对变量自身重新赋值,另一种是赋值生成新的变量,这两种方法的具体实现过程如下所示。

本书中以残次品的计算为例讲解产生对变量重新赋值的过程,该例子要求将百分制数量换算为优良、及格与不及格三类,分别用数字1、2、3代替。优秀标准为残次品数量小于等于60、及格标准为大于60小于65,不及格为大于等于65。下面分析所用数据文件为2-3(数据文件路径:sample/chap02/案例/2-3),原始数据文件如图2-21所示。

图2-21 未进行变量重新赋值的原始数据

1. 对变量自身重新赋值

对变量自身的重新赋值产生新变量,变量的新值直接在原来位置替代变量的原值。

(1)在菜单栏中依次选择“转换”|“重新编码为相同变量”命令,打开如图2-22 所示的“重新编码到相同的变量中”对话框。

图2-22 “重新编码到相同的变量中”对话框

(2)选择要重新赋值的变量。

选择要重新赋值的变量,单击 按钮将其选入“变量”列表中,本例中将“时段1残次品数量”变量和“时段2残次品数量”变量选入数字变量列表,如图2-23所示。

图2-23 重新赋值变量的选择

(3)定义旧值与新值。

单击“旧值和新值”按钮,弹出如图2-24所示的“重新编码成相同变量:旧值和新值”对话框。

图2-24 “重新编码成相同变量:旧值和新值”对话框

● “旧值”选项组。

该选项组用于设置要改变的值的范围:如选择“值”,系统将用户在下面输入框中输入的值作为要改变的值;如选择“系统缺失”,系统将把系统指定缺失值作为要改变的值;如选择“系统或用户缺失”,系统将把系统指定缺失值或用户指定缺失值作为要改变的值;如选择“范围”,系统将把用户在下面输入框中输入的数值范围内的个案取值作为要改变的值;如选择“范围,从最低到值”,系统将把负无穷到用户在下面输入框中输入的数值范围内的个案取值作为要改变的值;如选择“范围,从值到最高”,系统将把用户在下面输入框中输入的数值到正无穷范围内的个案取值作为要改变的值。

● “新值”选项组。

该选项组用于设置变量的新赋值。如选择“值”单选按钮,表示由用户指定该值,用户可以再其后的输入框中输入变量的新赋值;如选择“系统缺失”单选按钮,系统将把系统指定缺失值作为新赋值。

用户完成旧值与新值的赋值配对后,可以单击“添加”按钮将其选入右边的“旧-->新”列表中。对于该列表中的对象,用户可以单击“更改”按钮进行修改或单击“删除”按钮予以删除。

本例中,将优秀标准为残次品小于等于60、及格标准为大于60小于65和不及格为大于65分的变量分别定义用数字1、2、3代替。

(4)设置个案选择条件。

个案选择条件的设置方法与前面章节相同,本书在此不再赘述。本例中依旧选择“包括所有个案”单选按钮。

(5)单击“确定”按钮,就可以对变量重新赋值。重新赋值后的变量如图2-25所示。

图2-25 变量自身重新赋值后的数据文件

由图2-25可以看出,原始分数均被表示级别的数字1、2和3代替,变量的新值直接在原来位置替代了变量的原值。

2. 赋值生成新的变量

与变量自身重新赋值不同,赋值生成新的变量操作会将变量的新值作为一个新的变量进行保存。

(1)在菜单栏中依次选择“转换”|“重新编码为不同变量”命令,打开如图2-26 所示的“重新编码为其他变量”对话框。

图2-26 “重新编码为其他变量”对话框

(2)选择要重新赋值的变量。

选择要重新赋值的变量,单击 按钮将其选入“输入变量->输出变量”列表中,并在输出变量列表中输入输出变量的信息,单击“更改”按钮本例中建立“时段1残次品数量到时段1等级”和“时段2残次品数量到时段2等级”两个变量转换,如图2-27所示。

图2-27 选择重新赋值的变量

(3)定义旧值与新值。

单击“旧值和新值”按钮,弹出如图2-28所示的“重新编码到其他变量:旧值和新值”对话框。

图2-28 “重新编码到其他变量:旧值和新值”对话框

● “旧值”选项组。

该选项组用于设置要改变的值的范围:如选择“值”单选按钮,系统将用户在下面输入框中输入的值作为要改变的值;如选择“系统缺失”单选按钮,系统将把系统指定缺失值作为要改变的值;如选择“系统或用户缺失”单选按钮,系统将把系统指定缺失值或用户指定缺失值作为要改变的值;如选择“范围”单选按钮,系统将把用户在下面输入框中输入的数值范围内的个案取值作为要改变的值;如选择“范围,从最低到值”单选按钮,系统将把负无穷到用户在下面输入框中输入的数值范围内的个案取值作为要改变的值;如选择“范围,从值到最高”单选按钮,系统将把用户在下面输入框中输入的数值到正无穷范围内的个案取值作为要改变的值。

● “新值”选项组。

该选项组用于设置变量的新赋值。如选择“值”单选按钮,表示由用户指定该值,用户可以在其后的输入框中输入变量的新赋值;如选择“系统缺失”单选按钮,系统将把系统指定缺失值作为新赋值;如选择“复制旧值”单选按钮,系统将不改变旧值。

● “输出变量为字符串”复选框。

如选择该复选框,系统将把新赋值生成的变量设定为字符串变量。

用户设置旧值与新值的赋值配对后,可以单击“添加”按钮将其选入右边的“旧-->新”列表中。对于该列表中的对象,用户可以单击“更改”按钮进行修改或单击“删除”按钮予以删除。

本例中按照要求,将优秀标准为残次品小于等于60、及格标准为大于60小于65和不及格标准为大于65分的变量分别定义用数字1、2、3代替。

(4)设置个案选择条件。

个案选择条件的设置方法与前面章节相同,本书在此不再赘述。

(5)单击“确定”按钮,就可以对变量重新赋值。赋值产生新的变量的结果如图2-29所示。

图2-29 赋值后产生的新变量

由图2-29可以看出,原始分数均被表示级别的数字1、2和3代替,变量重新赋值后产生了新变量“时段1等级”和“时段2等级”。