在应用Stata在进行计量回归之前,你真的会进行数据清理么?
为什么要做数据清理呢?因为90%以上的原始数据因为各种原因都存在错误。如果在数据分析前,没有把这些问题清理好,很有可能导致后面数据分析不出真实的结果。数据清理就是把“脏”的“清理掉”,指发现并纠正数据文件中可识别的错误的最后一道程序,包括检查数据一致性,处理无效值和缺失值等。
数据清理是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性,然后进行必要的权重调整等,以满足后续的计量回归的需要。目前国内各大研究机构释放出来的数据很多,如CHNS、CGSS、CFPS、CHFS等等,那么数据清理需要进行哪些步骤呢?
数据清理第一步:整体数据查看
数据清理第二步:变量清理
方法一:直接删除----适合缺失值数量较小,并且是随机出现的,删除它们对整体数据影响不大的情况。 方法二:使用一个全局常量填充---譬如将缺失值用“Unknown”等填充,但是效果不一定好,因为算法可能会把它识别为一个新的类别,一般很少用。 方法三:使用均值或中位数代替----优点:不会减少样本信息,处理简单。缺点:当缺失数据不是随机数据时会产生偏差.对于正常分布的数据可以使用均值代替,如果数据是倾斜的,使用中位数可能更好。 方法四:插补法
随机插补法----从总体中随机抽取某个样本代替缺失样本 多重插补法----通过变量之间的关系对缺失数据进行预测,利用蒙特卡洛方法生成多个完整的数据集,在对这些数据集进行分析,最后对分析结果进行汇总处理 热平台插补----指在非缺失数据集中找到一个与缺失值所在样本相似的样本(匹配样本),利用其中的观测值对缺失值进行插补。这样做的优点是:简单易行,准去率较高。缺点:变量数量较多时,通常很难找到与需要插补样本完全相同的样本。但我们可以按照某些变量将数据分层,在层中对缺失值实用均值插补 拉格朗日差值法和牛顿插值法(简单高效,数值分析里的内容)
方法五:建模法可以用回归、使用贝叶斯形式化方法的基于推理的工具或决策树归纳确定。例如,利用数据集中其他数据的属性,可以构造一棵判定树,来预测缺失值的值。
方法一:直接删除。这只一种非常粗暴的方法。由于异常值对于统计推断的影响巨大,这种做法目前已经不多采用了,尤其当样本量规模不大甚至比较小的时候。当然如果数据量样本足够大而异常值并不多的情况下,慎行。 方法二:替换成均值或者中位数这是一种非常偷懒的做法,如果是做回归那么就在回归时改成用中位数回归,不过这也确实是一种很不错的办法。 方法三:将异常值视为缺失值,交给缺失值处理方法来处理。缺失值的处理方式本文前面已经详细介绍,在此不再赘述。 方法四:winsorize命令。
数据清理第三步:一些更为深入的工作
赞 (0)