利用SPSS消除录入误差的方法.docx
- 文档编号:2378844
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:16
- 大小:32.84KB
利用SPSS消除录入误差的方法.docx
《利用SPSS消除录入误差的方法.docx》由会员分享,可在线阅读,更多相关《利用SPSS消除录入误差的方法.docx(16页珍藏版)》请在冰豆网上搜索。
利用SPSS消除录入误差的方法
利用SPSS消除录入误差的方法
一、统计分析中的录入误差
任何一项社会调查都不可能完全准确地描述社会生活的原貌,也就是说不论采用什么样的方法,调查误差总是存在的。
但调查的误差应当是越小越好。
只有把误差控制在调查精度要求的范围之内,调查才是有价值的。
如果调查的样本是一个随机样本,则误差主要来自两个方面:
一是工作误差,二是随机误差。
从理论上说,随机误差可以通过扩大样本来减少。
样本越大,随机误差就越小;样本等于总体时,随机误差为零。
工作误差包括三方面:
一是登记误差,二是录入误差,三是计算误差。
使用计算机进行统计分析能基本上消除计算误差。
登记误差是指调查员在登记调查表时的错误登记,或是被调查者在填写问卷时的错误填答。
这部分误差是无法计算的,也没有什么技术手段可以消除,只能通过选择高水平的访问员,加强培训,制定严格的规范,进行严格的督导等手段来尽可能地减少。
录入误差是指在计算机录入时,由于录入错误造成的误差。
在计算机录入的过程中,录入误差是不可避免的。
每个人不论其工作的精确度多么高,都会或多或少地产生错误。
根据我们的经验,一个人的录入错误率平均说来约为1%左右。
如果某次调查的样本数为1000,每份问卷中包含100个变量的话,录入的错误数据将为1000*100*1%=1000个左右。
这些错误的数据如果不被剔除的话,将会严重影响计算结果的准确性。
尤其是一些远离数据有效取值范围的离群值对计算结果的干扰性更大。
因此,做定量分析的研究者都非常重视数据录入的准确性。
二、减少录入误差的常用方法及其缺点
目前社会学界采用的减少录入误差的方法主要有校对法与非法值检验法,但这两种方法都存在一些问题。
下面我们分别加以分析。
1.校对法
校对法是多年来一直使用的方法,是在数据录入计算机之后,由录入员或研究人员将原始资料与计算机中的资料一一对比地进行校对。
这种方法的缺点是:
第一,精确性低。
校对仍然是人工性的工作,由于工作人员的工作态度、身体状况、技术水平等多方面原因,校对工作中人的工作误差仍难以避免。
同时,长时间的校对所造成的视觉疲劳也会大大降低校对的精度。
经过一次校对,根本不能达到消除录入误差的目的。
因此,对于精确度要求很高的调查来说,要进行二校甚至三校。
即使进行多次校对之后,到底还剩下多少错误录入的数据,研究者和录入者心里并不清楚。
第二,花费时间长。
校对一次所花费的时间与录入一次所花费的时间基本相同。
有时甚至比录入花费的时间还要长。
第三,成本高。
校对一次所花费的人力与录入一次基本相同,如果为保证精度的需要而进行二校甚至三校的话,需要花费的人力和时间就更多。
这样做的结果,是大大增加了录入成本。
2.非法值检验法
社会调查中的任何一个变量都有着确定性的取值范围。
在取值范围之内的数据称为合法值,而在取之范围之外的数据称为非法值。
如果录入的数据值是在合法的取值范围之外,这个数据就被视为非法数据。
通过检查某一个数据是否在合法的取值范围内,可以部分地确定该数据的录入是否正确。
用SPSS制作一个变量的频数分布表,可以看出该变量录入了多少个非法值。
如果将数据库根据此变量进行排序,则可以将该变量录入了非法值的个案集中起来进行修改。
这种检验和纠错的方法跟校对法相比,由于省去了一一对比的过程,能节省很多人力和时间。
但这样做的结果只是找到了在合法值取值范围以外的录入错误。
如果录入的错误数据在合法值的取值范围之内,用这种方法就无法检查出来。
三、利用SPSS消除录入误差的方法
1.基本思想
笔者在用SPSS进行录入和统计分析的过程中摸索出了一套操作简单,行之有效的减少甚至基本消除录入误差的方法。
利用SPSS消除录入误差的方法可以概括为八个字:
并行录入,对比纠错。
并行录入是指:
问卷统一编号以后,由两名录入员按照同样的数据表格式各录入一次。
对比纠错是指:
将两个人录入的同一个数据进行对比,如果相同则认为两个人的录入都正确;如果不同,则至少有一个人的录入是错误的,需要对照问卷纠错。
用这种方法很容易找到录入错误的数值,且由于对比过程可以由计算机来实现,不仅省去了一一校对的麻烦,而且大大提高了纠错的精确性。
2.实际操作过程
(1)并行录入
在录入前必须把所有的问卷编号,使每一份问卷有一个唯一号。
在录入时,问卷编号必须作为一个变量录入计算机。
并行录入时,要求两位录入员所用的变量名、变量的各种设置、变量名标签(lable)、变量值标签(values)等必须完全相同。
最好的方法是变量制作完以后,以不同的文件名拷贝成两分,由两位录入员使用变量设置完全相同的数据文件进行录入。
录入结束后,应按照问卷编号对数据进行排序。
(2)对比纠错
假如是A、B两个人进行录入。
把A录入的数据文件称为文件A,B录入的称为文件B。
对比纠错的过程是:
先在文件A所有变量名的后面加一个共同的字符,在文件B所有变量名的后面加另一个共同的字符。
这样既使文件B的变量名与文件A的变量名相区别,又便于对两个文件中相应的变量作比较。
作此修改后,将文件B的全部数据以添加变量的方式添加到文件A中(用SPSS中的MergeFiles功能中的AddVariables指令)。
这样在文件A中的变量数就成为原来的两倍,而且每一个变量都有一个变量名只相差一个字符的另一个变量与之相对应。
然后用SPSS中Transform的下拉菜单中的Compute指令。
在Compute对话框中把每对相互对应的变量进行比较,并以比较的结果生成新的变量。
我们把这个新变量称为纠错变量。
在纠错变量的取值中,只有缺失和1两种情况。
当两个人录入的值相同时,纠错变量的值设为缺失。
当两个人录入的值不同时,纠错变量的值为1。
根据这个1在SPSS数据窗口中的位置,很容易找到生成这个纠错变量的原变量,进而确定错误录入的位置。
并根据这个1所对应的问卷编号找到该份问卷,来纠正录入错误。
四、用SPSS实现计算机自动对比数据的方法
上面介绍的手工操作过程对于变量数少,个案数多的数据文件应用起来比较方便。
如果变量数很多,手工操作仍很麻烦。
为此,我们编制了几个简单的SPSS程序,以简化对比纠错的过程。
下面介绍纠错的方法并给出所用的程序。
本方法的程序由三部分构成:
(1)预程序;
(2)主程序;(3)附加程序。
三个程序均在SPSS的Syntax窗口中运行。
其中主程序的基本思想与上述的手工操作的思路一致,即:
对独立录入但结构相同的两份数据文件A与B的变量名略作变化后,用MergeFiles指令加以合并,将源自A的数据一一跟源自B的相应数据进行对比,生成一个纠错变量。
纠错变量的值标示出A与B的数据是否相符,这样便可以对照原始问卷对不相符的地方进行纠错。
主程序还具有如下功能:
(1)自动使A中每一个变量与B中相应的变量及通过二者对比生成的纠错变量相邻,从而使对照问卷纠错时方便得多。
(2)对多种变量类型(如数值型、文字型、日期型变量)都能一次性地自动进行比较并生成相应的纠错变量。
对照问卷纠错的工作结束后,可以运行附加程序,使数据文件恢复到原先的结构,即只保留纠正过的数据文件的变量,而去掉来自另一文件的变量与纠错变量。
在变量很多的情况下,主程序与附加程序都会包含大量的指令行。
这些指令如果都手工编写,一是工作量大,二是容易因疏忽而出错。
预程序的作用,是根据数据文件的Dictionary中的变量名称与变量类型的信息,自动写出主程序与预程序所需的绝大多数指令行,只需在预程序输出结果的基础上略加编辑,就可形成主程序与附加程序。
五、用SPSS实现计算机自动对比数据的操作过程
1.运行该程序的条件
运行下面给出的程序时,要求用户必须做到以下四点:
(1)要对比的两个数据文件必须有完全相同的变量名和变量类型;
(2)两个数据文件的个案(Case)数及其顺序必须相同(因为如果计算机将不同的个案进行比较,将会标出很多“错误”),这可以通过用上面第三部分介绍的手工操作方法先对问卷编号这一变量进行检查来实现;
(3)这两个文件必须均在计算机C盘的根目录下,文件名分别为Data1.sav与Data2.sav(如果数据文件名或其所在位置不同,就需要对下面程序中所用的数据文件的名称与路径作相应的修改);
(4)两个数据文件中每个变量的变量名不能超过19个字节(每个汉字相当于2个字节)。
作第四条要求,是想让整个对比纠错过程中来自Data1.sav和Data2.sav的变量及纠错变量的变量名长度不超过20。
如果Data1.sav和Data2.sav中有名称更长的变量,需要对下面的程序作适当调整,将第四条要求放宽到变量名不超过63字节,而整个纠错过程中有关变量名不超过64字节(SPSS15.0允许的最长的变量名)。
之所以保留一个字节,是因为,为了确保在SPSS自动执行MergeFiles操作及生成纠错变量时不会出现相同的变量名,计算机在执行下面程序的过程中,自动将Data1.sav中的变量名都加上“1”的后缀,将Data2.sav中的变量名都加上“2”的后缀,而纠错变量的变量名统一由原数据文件中的变量名加上“3”的后缀生成,这样就能保证变量名不会相重。
下面,我们给出实际的程序及操作。
为叙述简单起见,我们假定Data1.sav与Data2.sav只有六个变量,即Numeric_A、String_B、Date_C及“数值型变量D”、“字符型变量E”、“日期型变量F”组成,其中Numeric_A与“数值型变量第四”为数值型变量,String_B与“字符型变量第五”为字符型变量,而Date_C与“日期型变量第六”为日期型变量。
当然,一个实际的数据文件的变量数一般会多得多,但这只影响到下面程序中用粗体字标出的部分——每增加一个变量每个粗体部分的指令便会相应地增加一行。
2.预程序的生成及运行
在SPSS中打开数据文件Data1.sav,在File下拉菜单中选择New,在弹出菜单中选择Syntax,这时会出现一个SPSS的Syntax编辑窗口(Syntax1)。
在此窗口中输入如下指令:
=====================================================================
displayvariables.
---------------------------------------------------------------------
运行此指令(在Run的下拉菜单中选择All),这时会出现一个显示运行结果的窗口Output1,其中有下面这个目标:
=====================================================================
VariableInformation
Variable
Position
Label
MeasurementLevel
PrintFormat
WriteFormat
Numeric_A
1
Scale
F8.2
F8.2
String_B
2
Nominal
A8
A8
Date_C
3
Scale
ADATE8
ADATE8
数值型变量D
4
Scale
F8.2
F8.2
字符型变量E
5
Nominal
A8
A8
日期型变量F
6
Scale
ADATE10
ADATE10
Variablesintheworkingfile
---------------------------------------------------------------------
将此目标拷到一个Word文档中,删掉表格之外的文字及表格中除Variable和MeasurementLevel外的所有列,再删掉第一行,得到如下结果:
=====
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 利用 SPSS 消除 录入 误差 方法