正文
一般而言,每个数据集都有唯一一个识别每条记录的识别符(重复测量的长型数据除外)。Stata检查唯一识别符是否唯一的命令为isid(或许是is this an ID的缩写)。isid允许同时检查多个唯一识别符,如果没有返回值,就说明是唯一的(没有消息就是好消息);如果不唯一,就会出现红色提示variable *** does not uniquely identify the observations。如采用下面例子中的查重方式:
如果出现重复记录就需要详细查看重复记录的情况。深入检查数据集重复记录的Stata命令为duplicates,对应的Stata菜单操作方式为Data → Data utilities → Manageduplicate observations。Stata是这样描述duplicates命令的:duplicates命令用来报告、查看、标示和删除重复记录。具体应用,大家可以在Stata软件命令栏中输入help duplicates查看。
一、数据的逻辑清理
在数据清理时,我们会根据常识及专业知识对连续变量间的关系进行核对,以识别可能的错误。如调查对象的出生日期应小于或等于调查日期(常识),妇女的生育年龄肯定不能小于月经初潮年龄(专业知识)。还有一些具有经济意义的数据,如个人年消费总额肯定不能为负,数据样本中我国省级行政单位数目肯定不能超过34等等。这些需要学术研究者认真研究和比对,可以采用list命令列举的方式,或者scatter命令看散点图等简单处理后运用专业知识或者常识来判别。
二、缺失值的识别与处理
对于调查数据来说,缺失值是司空见惯的。缺失值的产生的原因多种多样,主要分为机械原因和人为原因。机械原因是由于机械原因导致的数据收集或保存的失败造成的数据缺失,比如数据存储的失败,存储器损坏,机械故障导致某段时间数据未能收集(对于定时数据采集而言)。人为原因是由于人的主观失误、历史局限或有意隐瞒造成的数据缺失,比如,在市场调查中被访人拒绝透露相关问题的答案,或者回答的问题是无效的,数据录入人员失误漏录了数据每种缺失都会对统计分析产生不同的影响,数据清理时需要对每种缺失值采用不同的处理方式。那么,Stata中有哪些命令可以快速查看数据的缺失值呢?这里为大家简单介绍几个与查看缺失值相关的命令。
命令1:misstable
命令misstable可以快速查看变量的缺失值,它会以表格的形式呈现数据缺失的样本量,该命令的语法结构为:
misstable summarize[varlist][if][in][, summarize_options]
运行命令misstable和选项all可以直接输出指定变量串中所有变量的缺失情况。如果变量本身没有缺失值,表格结果显示为空;由于misstable只能识别数值型变量的缺失值,无法识别字符型变量的缺失值,所以,对于字符型变量来说,表格结果显示为“(string variable)”。
命令2:nmissing
nmissing是第三方用户写的命令,该命令的语法结构为:
nmissing [varlist] [if exp] [in range] [, min(#) obs piasm trim]