【云驻共创】云享 MindTalks · 第十七期--探索性数据分析方法
目录:
1.前言
2.理解数据科学
3.探索性数据分析方法的核心理念
4.探索性数据分析方法的阶段划分
5.探索性数据分析方法的基本步骤
6.常用软件与工具
7.问题汇总
8.总结
1、 前言
面对纷繁复杂的数据,如何寻求并发现数据隐含的内在规律?探索性数据分析为我们提供了一个全新的视角,以实际数据为依据,不对数据分布做预先假设,而是直观审视数据以及数据可视化,以促进我们发现规律,得到启迪,满足数据分析的多方面需求,也包括了相关性分析的要求。
探索性数据分析是我们对于数据中隐含的信息真正开始了解的阶段。在探索期间可能需要采用多种类型的数据转换技术。而描述性统计会给出探索,概括以及描述数据的图形法和数值法,这些直观图形和数值量度,取决于我们希望描述的数据类型,例如定量的或者定性的。描述性统计的相关知识,是统计学背后的数学基础。
这次让我们一起了解,探索性数据分析方法的核心理念与基本步骤--复杂数据的调查、汇总、理解与应用之道。
2、 理解数据科学
数据科学:
• 涉及多个领域的跨学科知识,包括计算机科学,数据信息,统计学,以及数学
• 数据科学正处于热度不减的巅峰时刻,同时数据科学家的技能也正在改变
• 要成为顶尖的数据科学家,我需要学习什么类型的技能?
“数据科学家不仅仅需要构建出色的数学模型,更重要的是能够阐释已获得的成果并将成果用于商业智能的开发当中。” ----Suresh Kumar Mukhiya
数据科学是将数据转化为决策和行动(tradecraft)的艺术,是人和计算机一起工作将数据转化为知识发现的工具、技术和流程的整合。数据学科通过收集数据、描述数据、发现知识,进而进行合理的有针对性的预测和建议。
什么是数据科学家?数据科学家收集和清理大量的数据,维护易于使用的仪表板和数据库,解释数据以解决问题和运行实验,建立算法,并以吸引人的可视化方式将数据呈现给利益相关者。
为什么建议大家要去了解数据科学呢,因为数据(及其应用)是沟通理解成本最低的语言,能帮助大家在复杂问题面前迅速进入同一个频道来进行思考。
数据科学是否难,其实取决于你的背景以及你是否喜欢与数字、数据打交道。尽管数据科学家不需要像数据工程师那样使用软件工程或者机器学习技术,但是你需要学习如何编写代码来建立预测模型。
学习数据科学不需要高等学历,尽管大部分招聘信息列出了工程学、计算机科学、数学或统计学硕士或博士学位,但对数据科学家的需求量远远大于供应量,这意味着企业愿意雇佣非传统的申请者。实际上,很多顶级公司,比如谷歌,苹果和 IBM,都不再要求申请者具有大学学历。
如果你想在没有学位的情况下进入数据科学领域,你可以参加在线课程和认证项目,或者通过视频和模块自学。
此外,数据科学的学习曲线非常陡峭,它涉及棘手的问题、大量的数据、专业技术和领域知识。但是幸运的是,有很多免费的在线资源可以帮助你开始成为一名初级数据科学家。最后,你还要热爱学习,因为数据科学家需要不断提高技能,学习新技术。
我们在认识一个复杂问题时,通常需要把它拆解为不同维度不同指标以便于理解,这个过程的绝大部分可以靠数据来完成。比如今年的疫情,通过下面这样一张图就可以直截了当了解各省份的情况。若是还想要了解更详细的情况,也是可以通过其他数据支撑来实现的。
试想,如果不用数据作为支撑,我们该怎么去了解疫情状况,又该如何向别人阐述现在的情况呢?
可以这样去理解,数据科学融合了诸多理论和技术,旨在从海量数据中挖掘有价值的信息,并应用到生产实践当中,提高社会生产效率。数据科学没有学科限制,几乎可以为所有学科所有领域服务。
3、 探索性数据分析方法的核心理念
“将探索性数据分析方法纳入统计学专家的工具箱里面,以便于对数据进行探查和发现信息并建立更加崭新的假设,从而在数据收集与实验的过程中开发出更加新颖的研究方法。”
----John Tuckey
核心理念:
• 探索性数据分析方法,Exploratory Data Analysis(EDA)
• 拿到数据后,探查现有可用的数据集从而发现数据模型,异常点,检验假设,以及采用统计度量措施来验证假设的过程。
• 主要目的就是在实际进行正式建模或者形成假设之前探查出数据可以告知我们什么信息。
• 该方法让我们通过可视化技术来理解数据并为进一步的分析做出假设。其重点就是为后续步骤建立数据概要或者提供洞察信息在没有做出任何基本假设的情况下,探索性数据分析方法实际上揭示出了数据隐含的基本事实。
通过探索性分析,可以做以下的工作:
1、 写出一系列你自己做的假设,然后接着做更深入的数据分析。
2、 记录下自己探索过程中更进一步的数据分析过程。
3、把自己的中间的结果给自己的同行看看,让他们能够给你一些更有拓展性的反馈、或者意见。不要独自一个人做,要走出去,多多交流,打开新的世界。
4、将可视化与结果结合一起。探索性数据分析,就是依赖你好的模型意识,一般把模型的敏感度叫心智模型,最初的心智模型可能错了,一旦自己的结果违背自己的假设,就要立即回去详细的思考。所以我们在数据探索的尽可能把自己的可视化图和结果放一起,这样便于进一步分析。
4、 探索性数据分析方法的阶段划分
阶段划分:8个阶段类似于跨行业数据挖掘标准流程 (CRISP-DM)中用
CRISP-DM代表跨行业的数据挖掘过程,CRISP-DM 模型是KDD模型的一种。CRISP-DM方法论提供了计划数据挖掘项目的结构化方法。这是一种可靠且经过验证的方法。
1、数据需求确定[多种数据源/存储类型/数据分类]
2、数据收集[以正确的格式进行存储]
3、数据处理[预整理过程/导出数据集/存放到正确的表格/结构化处理]
4、数据清洗[数据转换/完整性/数据重复性/数据错误/缺失值检查]
5、探索性数据分析[数据中隐含的信息/采用多种类型的数据转换技术]
6、数据建模与算法应用[模型用来描述自变量和因变量之间的关系]
7、数据产品[数据作为输入,进而产生输出/推荐模型]
8、信息传递与成果展示[成果传递/服务于商业智能/数据可视化]
5、 探索性数据分析方法的基本步骤
➢问题定义[在提取有用的洞察信息之前,定义需要解决的业务问题]
➢数据准备[定义数据源/定义数据架构模式和数据表/理解数据的主要特征/清洗数据集/删除不相关的数据集/转换数据/数据分块]
➢数据分析[汇总数据/发现数据之间隐藏的相关性和关联关系/开发预测模型/评估模型/计算精度/汇总表,图表,描述性统计,推断统计,相关性统计,检索,分组,以及数学模型]
➢应用开发与成果表示[以图表,汇总表,地图,以及图解示意图的形式向目标群体展示数据集信息/从数据集获取到的分析成果应该便于业务相关人员进行解读,这是探索性数据分析的主要目标之一/散点图,字符图,直方图,箱线图,残差图,均值图]
探索性数据分析如何保证数据分析结果是准确的,科学的,让人满意的?
在每个阶段和步骤中,都有着特别细致的问题和困难,我们不得不面临着各种各样的挑战,这就需要不断地去尝试与迭代,放下成见,洞悉数据本身,采用多种数据转换技术以及更直观的数据可视化技术,去探查数据隐含的更有价值的信息,从而发现内在规律,得到启迪。
6、 常用软件与工具
➢Python语言[广泛用于数据分析,数据挖掘,以及数据科学领域]
➢R语言[广泛用于统计计算以及图形数据分析领域]
➢Weka[开源的数据挖掘软件包/含有探索性数据分析方法中用到的多种工具和算法]
➢KNIME[基于Eclipse集成开发环境,用于数据分析的开源工具]
➢Python库-NumPy[数据分析与科学计算基础软件包]
➢Python库-Pandas[数据分析支持库]
➢Python库-SciPy[用于科学计算的开源Python库]
➢Python库-Matplotlib[大量的可自定义的绘图库,全面完整的后端程序。报表应用程序/
交互式分析应用程序/复杂仪表盘应用程序]
探索性数据分析过程主要使用哪些指标来代表数据的分布?有没有好用的一些分析工具?
一般来说,数据维数的增大使得一些传统的数据分析方法失效,而采用多维数据的可视化技术,将高维的数据转换为我们视觉能够感知的二维或者三维空间,其中典型的方法包括:投影寻踪和独立成分分析,也就带来了不同的观察视角,进而采用量化的指标体系,例如投影指标。
7、 问题汇总
问题1:探索性数据分析方法有什么优势?
探索性数据分析方法让我们有机会通过可视化技术来理解数据并为进一步的分析做出假设。在数据挖掘的项目中,探索性数据分析方法的重点就是为后续步骤建立数据概要或者提供洞察信息。在没有做出任何基本假设的情况下,探索性数据分析方法实际上揭示出了数据隐含的基本事实。事实上,数据科学家正是采用该分析过程来了解可以创建什么类型的数据模型以及数据假设。
问题2:探索性数据分析方法和传统数据分析方法有何不同?有哪些特点?
对于经典数据分析方法,在问题定义和数据收集步骤之后,紧接着就是数据模型的开发,然后进行数据分析以及信息传递与成果展示。而对于探索性数据分析方法,则是将数据模型开发与数据分析这两个步骤做了前后交换,其主要关注数据本身,数据的结构,异常值,数据模型,以及数据可视化。一般来说,在探索性数据分析方法中,我们不会对数据做出任何确定性模型或者概率模型的先验假设。
问题3:探索性数据分析方法未来发展前景如何?
探索性数据分析的主要目的就是在实际进行正式建模或者形成假设之前探查出数据可以告知我们什么信息。John Tuckey倡导将探索性数据分析方法纳入统计学专家的工具箱,以便于对数据进行探查和发现信息并建立更加崭新的假设,从而在数据收集与实验的过程中开发出更加新颖的研究方法。我们期待着探索性数据分析方法有着更为广阔的发展前景。
问题4:探索性数据分析方法可以应用在哪些方面?
不妨参考一下这样的应用场景:对于收集到的数据,需要采取适当和完善的数据处理策略。在仅有少量数据点,也缺少计算机程序辅助的情况下,几乎不可能理解数据集的含义。收集到的数据在确定可以提供有价值的洞察信息并决定做进一步处理之前,需要执行数据挖掘,也就是经历一段独特的数据分析过程。而在数据挖掘中,探索性数据分析通常是最重要的,应该首先去尝试的分析方法。我们每天都在产生数据,在线购物与消费产生了交易数据,观看视频参与互动产生了社交数据,在如此众多的数据中,采用探索性数据分析方法来探查用户的行为与喜好,以更好地为用户服务,例如精准推荐。
问题5:探索性数据分析有哪些步骤?需要准备什么?
基本上,探索性数据分方法包含了四个不同的步骤:
S1:问题定义;S2:数据准备;S3:数据分析;S4:应用开发与成果表示
在S1中,定义需要解决的业务问题则是至关重要的。在S2中,定义数据源,定义数据架构模式和数据表,理解数据的主要特征,清洗数据集,删除不相关的数据集,转换数据,并将数据细分为便于分析处理的数据分块。在S3中,汇总数据,发现数据之间隐藏的相关性和关联关系,开发预测模型,评估模型,以及计算精度。一些用于数据汇总的技术包括:汇总表,图表,描述性统计,推断统计,相关性统计,检索,分组,以及数学模型。 在S4中:采用图表,汇总表,地图,以及图解示意图的形式向目标群体展示数据集信息,以便于业务相关人员进行解读。
问题6:是否有“探索性数据分析方法”的相关学习书籍推荐呢?想具体了解一下这方面知识。
Ref-01:《大数据探索性分析》(第2版),主编:吴翌琳 房祥忠,中国人民大学出版社;
Ref-02:《统计学》(原书第6版),关静 等译,机械工业出版社;
Ref-03:《大数据时代下的统计学》(第2版),杨轶莘 编著;
Ref-04:《数据分析即未来:企业全生命周期数据分析应用之道》,陈道斌 万芊 等译;
在不同的时期,以及所关注方向的差异性,我们选择的参考书籍或许是不同的,建议在正式购买之前,不妨先试读一些样章,或者去书店翻看一下,看是否适合自己,再决定是否购买,毕竟我们书架上的位置是有限的。
问题7:探索性数据分析有哪几种?可以用哪些语言进行探索性数据分析?
数据分析有好多种方法,探索性数据分析方法与经典方法以及贝叶斯分析方法有所不同。主要体现在数据模型开发与数据分析这两个步骤做了前后交换,以及贝叶斯数据分析方法中融合了先验概率分布的知识。 Python语言和R语言是进行探索性数据分析常用的编程语言,Weka和KNIME是常用的软件工具包。
问题8:探索性数据分析如何做好数据预处理?有哪些注意事项?
常见的预处理任务包括:正确地导出数据集,将数据存放到正确的表格中,进行结构化处理,以及采用正确的格式导出数据。这其中非常重要的事项就是“正确性”。
总结:
不少人认为,数据科学是少数几个专业的事情,比如计算机、数学、统计等等。着实,数据科学的根脚在理工领域,但是它的发展应用却是全学科的,它与每个人都息息相关。于整个社会而言,数据科学的潜力和生产力基本已经得到验证和肯定。
于高校而言,数据科学是探索新文科建设、跨学科交叉领域研究及人才培养方案新模式的良好途径。于个人而言,我们不一定要深入研究数据科学,但是不能对它一无所知。
数据科学素养是当今时代背景下信息素养的重要组成部分,信息素养大家应该都不陌生,它指的是人们对信息社会的适应能力,要求人们认识到精确、完整的信息是做出合理决策的基础。
探索性数据分析是我们对于数据中隐含的信息真正开始了解的阶段。在探索期间可能需要采用多种类型的数据转换技术。而描述性统计会给出探索,概括以及描述数据的图形法和数值法,这些直观图形和数值量度,取决于我们希望描述的数据类型,例如定量的或者定性的。描述性统计的相关知识,是统计学背后的数学基础。
在学习探索性数据分析方法和传统数据分析方法中,我们不妨参考这样的思路来综合考虑:现在需要解决什么样的数据分析问题?能否有机会去尝试采用探索性数据分析方法?如果研发团队正好愿意做这样的尝试,那么去查阅一下探索性数据分析方法的相关书籍与文献,其中自然会有相关的知识列表与清单,哪些是自己没有接触到的,需要补充与加强的,也就比较清晰了。
在这个过程中,一定要抓住重点问题,不要面面俱到,盲目扩展知识领域,例如用到了统计学的部分知识,不妨先查看相关章节,大致了解就好,而不是在一开始就把统计学完整地再学习一遍。
注:本文整理自【内容共创系列】之 探索性数据分析方法
- 点赞
- 收藏
- 关注作者
评论(0)