前言
“压根儿就没有干净的数据集。” —— 乔希·沙利文
《纽约时报》将数据清洗称为“看门人工作”,并称数据科学家百分之八十的时间都花费在了这些清洗任务上。
1、数据科学过程
(1)问题陈述。 识别出你要解决的问题是什么
(2)接下来要做的是数据收集与存储。 数据从何而来?它们在哪里存放?格式又是什么?
(3)然后是数据清洗。 数据需要修改吗?有什么需要删除的吗?数据应该怎么调整才能适用于接下来的分析和挖掘?
(4)数据分析和机器学习。 数据需要哪些处理?需要什么样的转换?适用什么样的算法?运用什么公式?使用什么机器学习算法?顺序是什么样的?
(5)数据展现和可视化实现。 数据处理结果应该怎样呈现出来呢?我们可以用一张或几张数据表来表现,也可以使用图画、图表、网络图、文字云、地图等形式。但这是最佳的可视化方案吗?有没有更好的方案?
(6)最后一步是问题决议。 你在第一步里所提出的疑惑或是问题的答案究竟是什么?数据处理结果还要哪些不足?这个方法能彻底解决问题吗?你还能找出别的什么方法吗?接下来要做的又是什么?
2、传达数据清洗工作的内容
如果你已经决定使用六步框架来实现数据科学过程报表,将发现只有到了第三部你才会真正开始进行数据清洗有关的工作。
哪怕你并不需要把数据科学过程制成正式的报告文档,你仍然会发现,认真地记录下曾经按什么顺序做了些什么事情,对以后的工作也是极有帮助的。
要记得写工作日志。这个日志应该包含链接、屏幕截图,或是复制粘贴你曾经运行过的具体的命令,并配上为什么要这样做的解释性文字。
3、数据清洗的环境
使用Excel、SQL Server、MySQL等工具。你需要熟悉使用这些工具的方法,熟悉常用的SQL。(以后会专门开一个blog讲解SQL的基本操作)
4、数据清洗的步骤
一般来说,数据清理是将数据库精简以除去重复记录,并使剩余部分转换成标准可接收格式的过程。数据清理标准模型是将数据输入到数据清理处理器,通过一系列步骤“ 清理”数据,然后以期望的格式输出清理过的数据(如上图所示)。数据清理从数据的准确性、完整性、一致性、惟一性、适时性、有效性几个方面来处理数据的丢失值、越界值、不一致代码、重复数据等问题。
4.1、前期准备工作:
1.将原始数据格式归一化处理。如:字符类型的数据以文本方式保存、数值类型的数据按对应规格的类型存储。
2.将数据导入数据库中,并以合理的格式编辑表名和字段名。(如:避免字段名带空格,可以改成下划线等)
4.2、清洗的操作:
1.解决不完整数据( 即值缺失)的方法
大多数情况下,缺失的值必须手工填入( 即手工清理)。当然,某些缺失值可以从本数据源或其它数据源推导出来,这就可以用平均值、最大值、最小值或更为复杂的概率估计代替缺失的值,从而达到清理的目的。
2.错误值的检测及解决方法
用统计分析的方法识别可能的错误值或异常值,如偏差分析、识别不遵守分布或回归方程的值,也可以用简单规则库( 常识性规则、业务特定规则等)检查数据值,或使用不同属性间的约束、外部的数据来检测和清理数据。
3.重复记录的检测及消除方法
数据库中属性值相同的记录被认为是重复记录,通过判断记录间的属性值是否相等来检测记录是否相等,相等的记录合并为一条记录(即合并/清除)。合并/清除是消重的基本方法。
4.不一致性( 数据源内部及数据源之间)的检测及解决方法
从多数据源集成的数据可能有语义冲突,可定义完整性约束用于检测不一致性,也可通过分析数据发现联系,从而使得数据保持一致。
以上就是常用的DataClean的方法了,回归本项目,博主的DC方法。
1.首先,我先去了解每个字段的含义,按前面的步骤归一化数据,使得数据对应其类型。
2.在Excel中进行第一次清洗,将所有值为“None”的数据替换为空(Excel的替换功能)
3.将数据导入SQL Server数据库和MySQL数据(至于为什么导入两个数据,是因为有一些操作,在用二者的时候会比较方便),并且修改了表在数据库中的字段名。
4.将原来的数据表分为不同的子表(详情见:Python实现数据分析(六)数据字典的建立),我想分别从这些表进行数据分析,代表从不同方向进行分析,并且创建相应的视图,方便在数据库中进行相关的操作。
5.进行数据筛选,选取特征值大的数据,并且保留下来,因为特征值的差异过大,在进行数据可视化的时候会非常的“尴尬”,你压根看不清表达了啥。
在写这篇博客之前,我觉得没必要做DC,因为懒…结果就“吃瘪”了…
给大家看看没有数据清洗的数据可视化的效果吧:
是不是看着很无语?
但是数据清洗之后呢?
所以可见DC是一件多么重要的事情!
举一个很简单的例子:你准备做饭,你有一个精致的篮子,里面放着各种各样新鲜的蔬菜。当你来到厨房准备烹饪之旅,可再看看周围,厨房里肮脏不堪,锅碗瓢盆上尽是油污,还沾着大块的“奥利给”。至于厨具,只有一把锈迹斑斑的切刀和一块湿抹布。水槽也是破破烂烂的。而恰恰就在此时,你发现从看似鲜美的蔬菜下面爬出了已知甲虫。
即使是实习厨师也不可能在这样的地方烹饪。往轻了说,无外乎是暴殄天物,浪费了一篮子精美的食材。如果严重点儿讲,这会使人致病。再说了,在这种地方烹饪干部毫无乐趣可言,也许全天的时间都浪费在用生锈的破刀切菜上面。
与厨房的道理一样,事先花费些时间清洗和准备好数据科学工作区、工具和原始数据,都是值得的。“错进,错出。”这句源于上20世纪60年代的计算机编程箴言,对如今的数据科学来说亦为真理。
(本例子选自Megan Squier《干净的数据 数据清洗入门与实践》P2 第一章 为什么需要清洗数据)
“错进,错出。” —— 美国国税局(1963)
参考资料:
【1】百度百科:数据清洗
【2】[美] Megan Squier《干净的数据 数据清洗入门与实践》
今天的文章利用python数据清洗常用函数_数据分析怎么弄出来[通俗易懂]分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/87198.html