Python数据分析入门与实战
上QQ阅读APP看书,第一时间看更新

1.4 数据分析

在进行数据分析之前,必须对数据有一个准确的认识。数据代表了事物不断变化过程中的数字化记录,即只有事物发生了变化才会有数据记录,有了数据,才能了解过去发生了什么,才能对这些现象进行分析,总结出一定的结论和规律,用来指导企业的生产活动。所以,数据分析的目的是为了对过去发生的现象进行评估和分析,并在这个基础上对未来事物的发生和发展做出预期分析处理,以此指导未来的一些关键性决策。

随着要分析和处理的数据量不断增长,数据处理、数据分析及数据挖掘技术也在快速进行迭代。其中可圈可点的主要是:分布式计算技术,如Hadoop、Spark及Flink;微博、微信等兴起后的非结构化数据处理技术;随着传输能力的提高得到快速应用的云存储技术和云计算技术等。数据分析所研究的对象是数据。在数据分析的各个阶段,数据都是主要的关注对象,要分析处理的原材料都由数据构成。处理、分析数据后,最终可能会从中得到有用的信息,这些信息能够增加对研究对象,也就是产生原始数据的系统的理解,从而准确地帮助企业进行业务的决策。

1.4.1 数据分析的流程与方法

进行数据分析时,一般要遵循严格的流程,使用常用的方法。依据行业内的通识,数据分析过程可以用以下几步来描述:转换和处理原始数据、以可视化方式呈现数据,以及建模做预测。其中每一步所起的作用对后面几步而言都至关重要。数据分析可以概括为多个阶段组成的过程链:①问题定义。②数据获取。③数据清洗。④数据转换。⑤数据探索。⑥预测模型。⑦模型评估/测试。⑧结果可视化和阐释。⑨解决方案部署。

一般而言,采集原始数据前,数据分析过程就已经开始了。只有深入探究作为研究对象的系统后,才有可能准确定义问题,这一步无论是对于科研还是商业问题都很重要。问题定义步骤完成后,在分析数据前,首先要做的就是获取数据。数据的选取一定要本着创建预测模型的目的,数据选取对数据分析的成功起着至关重要的作用。所采集的样本数据必须尽可能地反映实际情况,也就是能够描述系统对来自现实刺激的反应。而在数据准备阶段关注的是数据获取、清洗和规范化处理,以及把数据转换为优化过的、准备好的形式(通常为表格形式),以便使用在规划阶段就确定的分析方法处理这些数据。探索数据本质上是指从图形或统计数字中搜寻数据,以发现数据中的模式、联系与关系。

1.4.2 Python数据分析常用库

SciPy是一组专门用于科学计算的开源Python库。其中的多个库将是本书很多章节的主角,掌握这些库对数据分析很重要。由这些库组成的工具集擅长处理数据计算和可视化。

NumPy库的含义是Numerical Python。Python并没有提供数组功能,虽然列表可以完成基本的数组功能,但它不是真正的数组,而且在数据量较大时,使用列表的速度就会很慢。为此,NumPy提供了真正的数组功能以及对数据进行快速处理的函数。NumPy还是一个基础库,很多数据科学库(如Pandas,scikit-learn等)都依赖NumPy库。

Pandas库提供了复杂的数据结构和函数,其目的是降低处理难度,提升速度和效率。它是Python进行数据分析的核心库,也是本书的主力工具。它是Python世界中最强大的数据分析和探索工具。其包含高级的数据结构和精巧的工具,使得在Python中处理数据非常快速、简单。Pandas构建在NumPy之上,也使得以NumPy为中心的应用很容易使用。Pandas的功能非常强大,支持对数据进行增、删、改、查,数据处理函数,时间序列分析功能,以及灵活处理缺失数据等

Matplotlib是目前绘制2D图像最常用的Python包。无论是数据挖掘还是数据建模,都有必要进行数据分析可视化,而Matplotlib是最著名的绘图库,其主要用于二维绘图和简单的三维绘图。这个库提供了一整套和MATLAB相似但更为丰富的命令,让使用者可以非常快捷地用Python进行数据可视化,而且能够输出达到出版质量的图像

1.4.3 数据分析的结论

无论是做哪方面的数据分析,分析师最终都要形成一些结论,目的就是对数据所揭示的洞察进行总结。这是一个从定量分析到定性总结的过程,是形成洞察和智慧的路径。数据分析师一般都会将数据分析的结果写成数据分析报告,通过对数据全方位的数据分析来评估,为企业决策提供科学、严谨的依据,降低风险。当然, 数据分析报告是整个分析过程的成果,是评定一个事件的定性结论。

在数据分析的过程中,重要的概念一定要非常清晰,充分理解这个概念的内涵和外延,必要时在数据旁边做好精确的备注,有利于与他人共同合作去解决问题。例如,从销售数据中看到去年年底销售额出现了一些下跌,而到了今年年初时销售额又大幅度上涨,那么就有可能存在“囤货”的现象。当产品价格处于快速上涨的时间段内,有存货的经销商就有可能或存在惜售行为,因为晚卖一天,得到的收益就会有明显的提升,这对经销商来说有强大的吸引力。在实际分析的过程中要充分考虑到一些复杂的商业因素,结合具体的公司业务情况去分析才能得到比较准确的结果。

分析的结论一定要少而精,不要太依赖主观的想法,一定要依赖真实的数据。而总结出的分析结论还要易懂、易读,用图表代替大量的数字会有助于人们更形象、更直观地看清楚问题和结论。当然,图表也不要太多,过多的图表一样会让人无所适从。

在阅读本章之后,相信读者已经对数据分析有了一个简单的认识,下面就一起来开启Python数据分析之旅吧!