一、数据处理
1、数据导入
step1:单击【文件】-【打开】-【数据】,弹出【打开数据】对话框。在左上角的【查找范围】找到文件所在位置,下方【文件类型】右侧下拉菜单中根据文件类型选择对应的类型。本文导入的是CSV文件,如下图1-1,单击【打开】,进入【文本导入向导】对话框。
step2:在弹出的【文本导入向导-第1/6步】对话框中(图1-2),观察一下各变量间的安排方式,单击【下一步】。step3:在弹出的【文本导入向导-第2/6步】对话框中,根据本例变量的安排方式选择【分隔】,文件开头是否包含变量名称选择【否】,如图1-3,单击【下一步】。step4:在弹出的【文本导入向导-第3/6步】对话框中,进行个案设置,保持默认设置即可,单击【下一步】,如图1-4。step5:在弹出的【文本导入向导-第4/6步】对话框中,SPSS根据导入数据特点,自动勾选【制表符】分隔符,如图1-5,单击【下一步】。
step6:在弹出的【文本导入向导-第5/6步】对话框中,选中【数据预览】下的变量列,然后依次分别设置【变量名称】和数据格式。单击【下一步】;在弹出的【文本导入向导-第6/6步】对话框中,可根据需要,选择是否保存刚才设置过的格式或者获得导入过程的语法,单击【完成】,就成功导入SPSS了。
2、数据计算
step1:单击【转换】-【计算变量】,弹出【计算变量】对话框。在左上角的【目标变量】中输入计划生成的变量‘AGE’,在右侧【函数组】下拉菜单中找到所需的函数,本例中选择‘抽取日期’,在【函数和特殊变量】下选择‘Xdate.Year’,右上方【数字表达式】框中输入‘2020-XDATE.YEAR(BIRTHDAY)’,如图2-1,单击【确定】。返回‘数据视图’,可以看到生成了行的一列变量‘AGE’,如图2-2。
3、数据清洗
(1)筛选重复项
step1:单击【数据】-【标识重复个案】,弹出【标识重复个案对话框】,将变量'USERID'移到右侧框中,单击【确定】。此后可以看到‘数据视图’中多了变量——‘最后一个基本个案’,其中1代表非重复数据,0代表重复数据,选中此列,鼠标右击,在弹出的菜单中选择【升序排列】,可以看到最小值也为1,说明不存在重复项。由于该列变量在分析时无用,可以删除。
(2)缺失值和异常值处理
step1:单击【分析】 -【描述统计】-【描述】,打开【 描述性】对话框,将‘AGE’变量移到右侧 【变量】框中,勾选下方的【将标准化得分另存为变量(Z)】,如图3-3,单击【确定】。返回‘数据视图’,看到多出变量‘ZAG’,本例中ZAG的绝对值大于2的视为异常值(将±2δ 以外的数据视为异常值),如图3-4。
step2:单击【分析】 -【描述统计】-【探索】,打开【 探索】对话框,将‘ZAGE’变量移到右侧 【因变量列表】框中,勾选下方的【统计量】,如图3-5,单击【确定】。输出图3-6,根据图3-6中统计量可知:样本总计101535个,有效值共计32075个,存在缺失值;极大值和极小值的绝对值大于2,存在异常值。
step3:单击【数据】 -【选择个案】,打开【 选择个案】对话框,勾选右侧【选择】下的【如果条件满足(C)】项,如图3-7,【输出】下方根据需要勾选,本例勾选【过了掉未选定的个案】,单击【如果(I)...】,进入【选择个案:if】对话框。在公式框中输入‘ABS(ZAGE) <= 2&AGE ~= 0’,将缺失值和异常值过滤掉。如图3-8.此后可以看到‘数据视图’中多了变量——‘filter_$,其中1代表被选择,0代表未被选择。如图3-9.
4、数据分组(对年龄)
step1:分组前,先查看一下筛选后的数据情况,单击【分析】-【描述统计】-【频率】,进入【频率】对话框,将‘AGE’移到中间变量框中,点击右侧【统计量】,选择【众数】、【最小值】、【最大值】,点击【继续】如图3-10;点击【图表】,勾选【直方图】,见图3-11,点击【继续】,单击【确定】。从输出结果可以看到,有效值有30201个,年龄最小18岁,最大59岁,同年龄人数最多的是33岁;年龄分布基本服从正态分布。
step2:单击【转换】 -【重新编码为不同变量】,打开【 重新编码为其他变量】对话框,将‘AGE’变量移到中间框中,在右侧【输出变量】-【名称】下输入‘AGE_GROUPS’,点击【更改】,如图3-13。点击【旧值和新值】,进入【 重新编码为其他变量:旧值和新值】,将年龄划分为不同的范围,每个年龄段赋予一个新值,如50岁以上的人,在左下角【范围,从值到最高】下输入50,【新值】下输入4,点击【添加】,如图3-14,单击【继续】,返回原对话框,单击【确定】。进入‘数据视图’界面,生成一列变量‘AGE_GROUPS’,如图3-15.
step3:单击【数据】 -【定义变量属性】,打开【 定义变量属性】对话框将‘AGE_GROUPS’变量移到【要扫描的变量】中,如图3-16,单击【继续】,在【标签】列中输入自定义标签,如图3-17。返回‘数据视图’,单击右上角标签转换按钮,变量值标签发生了改变,如图3-18.
二、数据报表制作
(1)自定义表格形式
step1:单击【分析】 -【表】-【设定表】,进入【设定表格】对话框,依次将性别和年龄分组变量移到行,结果如图4-1,点击【类别位置】下的下拉菜单,选择【列中的行标签】(图4-2);再依次选中表中的‘AGE_GROUPS'和'SEX',单击鼠标右键,在弹出的子菜单中,见图4-3,取消【显示变量标签】前的勾选。点击【定义】下的【摘要与统计】,进入【摘要与统计】对话框,在该对话框中,将左侧【统计量】下的’列N%’和’行N%’移到右侧【显示】中。见图4-4,单击【应用选择】,返回【设定表格】对话框。
step2:选中表中的‘AGE_GROUPS',点击【定义】下的【分类和总计】,进入【分类和总计】对话框,选中30~39岁标签,单击【添加小计】,在弹出的【定义小计】对话框中输入‘中青年’,将18~39岁的用户定义为中青年,同样方法,设置40~59岁的为中老年,见图4-4,单击【应用】,返回【设定表格】对话框,单击【确定】。
(2)表格导出
step1:选中输出的表格,鼠标右键,在弹出的子菜单中选择【导出】,见图4-5,进入【导出输入】对话框,在左侧文档类型下拉子菜单中选择想要输出的文件类型,中间【浏览】选择文件保存位置,如图4-6,单击【确定】
(3)报表分析
行N%数据体现了在不同年龄段下的男女人数比例:随着年龄段增大,女性占比逐渐降低。中青年群体中,男女占比基本持平,分别为49.5%和50.5%,而中老年群体,男性占比远高于女性,分别为62.2%和37.8%。列N%数据体现了在不同性别下,各年龄段的用户人数比例。男性用户中,人数占比由高到低的年龄段依次是30~39岁(43.2%),40~49岁(28.4%),18~29岁(15.3%)和50岁以上(13.1%)。而女性用户中,人数占比由高到低年龄段依次是30~39岁(48.5%),18~29岁(21.8%),40~49岁(20.9%)和50岁以上(8.8%)。 由此可见,女性用户相比男性用户总体更加趋向年轻,18~39岁的女性用户占了女性总用户的70%以上,而30~49岁的男性用户占了男性总用户的70%以上。