一、用SPSS输入和处理数据
数据输入
在一般情况下,打开SPSS时会自动打开一个空的数据表(Data View)和一个变量表(Variable View)。如果要直接在SPSS中输入原始数据,只要按自己的需要定义变量、输入数据然后存盘就行了。
[例1.1] 输入表2-2的数据。
表2-2 学生成绩数据
输入数据最好先对变量进行定义。在第一列中依次输入“编号”“班级”等四个变量名,SPSS会自动为这些变量的其他属性赋予系统默认值。然后可以进行必要的修改,以满足实际需要。同时可以为变量加上标签,以对变量的含义进行更详细的说明。还可以通过定义数值标签对变量值进行定义。
当然,也完全可以先在数据表中输入数据,然后再对变量属性进行必要的定义,如图2-12所示。
图2-12 定义数值标签
用SPSS读入外部数据
在很多应用中需要用SPSS读入其他格式的数据,如Excel格式,文本格式等。完成这一任务有多种方式,而在数据量不大的情况下最简便的方式可能是“复制”+“粘贴”。
SPSS可以直接读取多种格式的数据。用SPSS读取Excel数据的步骤是:用鼠标选择“File Open Data”,将文件类型改为“Excel(*.xls)”,找到要打开的文件名,单击“打开”。在随后的对话框中选择要打开的数据表(因为Excel文件中可能包含多个数据表),需要的话再给定数据区域。如果数据表中不包含变量名的话取消选定“Read variable names from the first row of data”,单击确定就可以了。
注意如果Excel中的数据格式不够规范,SPSS可能无法正确读取数据,在用SPSS读入数据后要仔细审查数据是否正确。
用SPSS读取纯文本文件的过程与用Excel对文本文件进行分列的过程有些类似。
SPSS可以把数据存储为多种格式,SPSS格式的数据文件扩展名为“.sav”。当把SPSS数据文件存储为其他格式时,大部分情况下变量标签、数值标签定义会丢失。
用SPSS进行数据的排序、筛选和转置
[例2.1] 用数据表2-2输入的数据进行排序和筛选。
用鼠标选择“DataDSort Cases”,会弹出以下对话框(如图2-13所示)。选中“考试成绩”,单击中间的黑三角,把这个变量移至右面的矩形框中(这个过程也可以通过双击“考试成绩”完成)。再选择排序方式(升序或降序),点击“OK”按钮就可以了。
图2-13 数据排序
在数据分析中常常需要对数据的一个子集进行分析。这时需要首先从数据集中筛选出符合条件的数据。
假设需要筛选出成绩在85分以上的女生进行分析,选择Data DSelect Cases,进入Select Cases 对话框(如图2-14所示)。选择If condition is satisfied,然后单击If按钮进入If 对话框(如图2-15所示),在该对话框中的条件表达式栏中输入“考试成绩>85&性别=1”的条件表达式,单击Continue 按钮,在Select Cases 对话框中单击“OK”按钮。筛选的结果如图2-16所示:未被选中的观测的行号被打上了反斜杠(注意SPSS自动生成了一个筛选变量)。这样,在随后的分析中就会只对选中的观测进行分析了。如果想再次选中全部观测,再次打开图2-14的对话框,选择“All cases”就可以了。
在图2-14的对话框中如果把“Unselected cases are ”的选项改为“Deleted”,SPSS会删除未被选中的观测,但删除的观测是无法恢复的。SPSS还可以用其他方法筛选数据,例如从数据集中按一定比例随机选择数据,选择一定区域的数据等。
图2-14 筛选数据
图2-15 定义筛选条件
图2-16 筛选结果
SPSS进行数据转置的命令是Data Transpose,选定需要转置的变量,点击“OK”按钮就可以了,SPSS会产生一个新的数据文件,自动定义新的变量名和新变量的属性。
用SPSS函数计算新的变量
[例1.3] 根据表2-3的产值数据计算我国的产业比重。
表2-3 产值
单击SPSS Transform菜单的Compute命令,会弹出如图2-17所示的对话框。通过这个对话框可以以现有的变量为基础,利用SPSS丰富的函数计算出新的变量。
图2-17 用函数计算新变量
如果需要根据第一、第二、第三产业的产出计算一个新的变量GDP,在Target Variable的矩形框中输入新变量名GDP,在右面的函数类型中选择“Statistical”项,在右下方的函数中选择“Sum”函数,然后从左侧的变量表中把第一产业、第二产业、第三产业三个变量选到函数的参数中,用逗号隔开。点击“OK”按钮,新的变量就计算出来了。三次产业的产值比重也可以用类似的步骤计算得到。
[例1.4] 对表2-2考试成绩的数据进行重新编码。
Transform菜单中的Recode命令也经常用到。这个命令可以对已有的数据进行重新编码。假设要把百分制的成绩换算为九级制的成绩(0−59=1,F;60−64=2,D;65−69=3,D+;70−74=4,C;75−79=5,C+;80−84=6,B;85−89=7,B+;90−74=8,A;95−99=9,A+)。单击TransformDRecodeDinto different variables,会得到如图2-18所示的对话框。把左侧考试成绩变量选入中间的矩形框,在右侧的矩形框中输入变量名“九级制”,单击下面的“Change”项,这时中间的矩形框中会出现以下对应关系:考试成绩→九级制。
图2-18 对数据重新编码
接下来单击“Old and News Values”按钮,会弹出如图2-19所示的对话框。可以用这个对话框来定义新旧数值的对应关系。在Old Value栏中首先选择“Range:Lowest through”的选项,在矩形框中输入59,在New Value中输入1。这时Add按钮变亮,单击这个按钮,在右下方的矩形框中出现了Lowest through 59D1的对应关系。接下来在左侧选择并输入区间60 through64,在右侧输入新变量值2,依次类推。最后一个区间可以输入为 95 through Highest。定义好这些对应关系以后,单击“Continue”键,再单击图2-18中的“OK”按钮,就可以完成重新编码的过程了,如图2-19所示。
图2-19 定义新旧数值的对应关系
最后,用前面讲过的方法为新变量“九级制”加上数值标签:1=“F”,2=“D”,9= “A+”。整个重新编码过程就完成了。计算结果如图2-20所示。
图2-20 重编码得到的新变量
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。