400-893-5552

常和数据打交道,一定知道做好「数据清洗」有多重要

 
2017-02-16 14:58:44所属分类:行业动态

不管是多小的数据集,千万不要手动在 Excel 或者 TXT 编辑器里面手动修改数据,因为这些软件不会自动记录你做过的编辑,时间久了你可能会忘记自己做过什么。如果非要手动修改,建议在一个文档里完整写下你改动的内容。通常只有批量手动录入数据才会需要 Excel。

\

确认观测值名称(即第一列内容)是独特的。通常观测值名称都没有重复(比如国家名、个人证件号码等),但有些情况下观测值可能会重名(比如城市名、人名)。这时候你需要加上自己的标识符,以免后期做聚合、合并的时候出错。

经常检查数据类(data types,例如 numeric/character/logical/factor)。数据类如果不对,通常你的命令无法执行,软件会报错。但有时候恰好可以执行,软件也不会报错。这时候如果你没有检查数据类,很可能就带着错误的数据进入下一行运算。类似的情况在 Excel 里很常见,例如 Excel 会自动把一些数据变成日期格式,你不在意的话最后输出就错了。当然,数据分析软件比 Excel 好的地方是你随时都可以撤销命令。

小心处理“无数据”(NA)。一定要搞清楚你的软件如何对待“无数据”(NA)——有的软件在运算、合并的时候会自动忽略 NA 且不给你提醒,这个做法在很多科学研究里是错的,所以你得手动检查数据集里是否有 NA,并告诉软件应该怎样处理它们。另外,NA 在很多软件里都是逻辑(logical)而不是字符(character)类数据。如果你要键入或者判断 NA,一定要用逻辑 NA 而不是字符 NA。

合并数据集前,一定要了解清楚不同种“合并”(merge)命令的区别,且要想一个方法来检查合并是否成功。合并是非常容易出错的步骤,即使你用的命令是正确的,也会因为数据本身的小问题而失败。举个简单的例子,一个没有标题行的数据集,它的第一行在某些软件中会默认被当做标题行,在合并的时候会被忽略,这样你的结果可能就少一行。再或者你用来合并的那一列,原始数据有拼写错误或不同写法(英式美式拼写、繁体简体),合并后的结果就不会是你想要的。总之,在合并前一定要想一个方法来检测合并成功与否,例如检查行数列数,看看数据集里哪里有 NA 等等。数据分析软件输出了结果,并不代表你的合并就是正确的。

不要只看了数据集前几行,就以为每一行的数据都长这样。举个例子,如果数据的第一列是地名(“某某区”),你运行了“查看数据前几行”这个命令,发现这几行第一列的长度都是 3(“朝阳区”、“静安区”),就以为每一行第一列的长度都是 3。接下来,你用到一些关于变量长度的命令——如果第一列有的长度不是 3,输出结果就会有错。正确方法应该是先检查待处理的数据是否都遵循你假设的规则,不管是通过运行命令检验(“第一列有哪些值的长度不等于 3”)还是通过从常识思考(“有没有超过三个字的地名”)。

Copyright © 2013-2018 合肥彼岸互联信息技术有限公司 All Rights Reserved地址:合肥市高新区亚夏汽车大厦17楼
工信部备案号: 皖B2-20150071-4    增值电信业务经营许可证:皖B2-20150071-4 安全联盟认证 安全联盟认证 安全联盟实名认证

copyright@2015 合肥彼岸互联信息技术有限公司

电话:400-893-5552 0551-65371998 QQ:800022936

地址:合肥市高新区亚夏汽车大厦17楼