对照Excel,零基础学Python数据分析

978-7-115-60788-1
作者: 杨开振
译者:
编辑: 刘雅思

图书目录:

详情

本书主要介绍如何使用Python处理Excel数据。本书内容分为三大部分:第一部分主要介绍数据分析的概念和Python基础;第二部分通过蜂蜜电商数据分析案例详细介绍数据分析的技术要点,包括读写Excel文件所需的xlwings库和openpyxl库、数据分析的pandas核心库,以及数据可视化常用的Matplotlib库和Seaborn库;第三部分包括个人消费贷款数据分析和螺蛳粉连锁店销售数据分析两个实践案例,通过实践案例帮助读者回顾理论知识并提高实践能力。 本书适合Python零基础且需要处理大量Excel数据的办公人员阅读,也可以作为学习Python数据分析的入门教程。

图书摘要

版权信息

书名:对照Excel,零基础学Python数据分析

ISBN:978-7-115-60788-1

本书由人民邮电出版社发行数字版。版权所有,侵权必究。

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。

我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。

如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。

著    杨开振

责任编辑 刘雅思

人民邮电出版社出版发行  北京市丰台区成寿寺路11号

邮编 100164  电子邮件 315@ptpress.com.cn

网址 http://www.ptpress.com.cn

读者服务热线:(010)81055410

反盗版热线:(010)81055315

读者服务:

微信扫码关注【异步社区】微信公众号,回复“e60788”获取本书配套资源以及异步社区15天VIP会员卡,近千本电子书免费畅读。

内容提要

本书主要介绍如何使用Python处理Excel数据。本书内容分为三大部分:第一部分主要介绍数据分析的概念和Python基础;第二部分通过蜂蜜电商数据分析案例详细介绍数据分析的技术要点,包括读写Excel文件所需的xlwings库和openpyxl库、数据分析的pandas核心库,以及数据可视化常用的Matplotlib库和Seaborn库;第三部分包括个人消费贷款数据分析和螺蛳粉连锁店销售数据分析两个实践案例,通过实践案例帮助读者回顾理论知识并提高实践能力。

本书适合Python零基础且需要处理大量Excel数据的办公人员阅读,也可以作为学习Python数据分析的入门教程。

前  言

为什么要使用Python分析Excel数据

在使用传统办公软件进行数据分析的过程中,我们使用最多的数据分析工具莫过于Excel电子表格。但是,随着技术的日新月异,尤其是移动互联网时代的到来,数据量日益膨胀,业务也日趋复杂化,使用传统的办公软件Excel做数据分析日渐困难。主要体现在以下4点。

大量的数据导致Excel性能低下。如果只是处理几千条记录,Excel的性能还是有保障的,但是需要处理几万条甚至几百万条记录时,Excel的性能就很难得到保障了,在打开Excel的瞬间Excel可能就开始卡顿,无法再进行任何操作。对于需要处理移动互联网大量数据的企业,这是十分常见的场景,显然Excel已经无法满足需求。

业务的日趋复杂。Excel的功能是有限的,业务的复杂化决定了一些复杂的数据分析和统计操作进行起来十分困难,这是Excel的局限性。

大量的手动操作易出错。使用Excel需要手动反复操作,稍有不慎就会出错,尤其是需要统计数百条及以上的Excel数据时,更是如此。

无法满足时效性。大量的数据或者多个Excel文件的使用都会造成统计困难。面对十万级的数据,Excel打开时就会卡顿,而且在进行统计分析的过程中更是随时可能卡顿甚至崩溃,这必将对时效性造成很大影响。此外,有些企业将数据分散在多个Excel文件中,对成百上千个Excel文件进行数据整合就需要花费很长时间,加上还要处理这些数据,往往也无法保证时效性。

正是由于以上这些困难,我们需要一种新的工具来改进数据分析过程。Python语言是主流编程语言,兼具简单和高效的特点,十分适合初学编程的人士学习。学会Python语法基础后,再结合pandas这个强有力的数据分析库,就能够通过短短的几行到十几行代码完成数据分析。Python可以避免Excel数据分析所遇到的各种困难和局限性,使用Python来分析Excel数据是十分合适的,可以大大提高数据分析的效率。

本书特色与结构

在开始编写本书时,我就已经决定了本书不会面面俱到,而是有的放矢、突出重点,面向需要使用Python进行数据分析的非专业编程人员。由于面向的读者是非专业编程人员,因此本书会尽可能精简化,精简化包含以下两方面的意思。

知识点精选。不涉及数据分析的内容尽量简化。

内容简单化。不谈复杂的内容,只谈常见的数据分析知识点。

本书从这两个方面来降低读者的学习门槛和学习成本,以帮助读者尽快上手实践。在内容编排上,结合Excel的操作对应讲解Python数据分析如何实现,进一步让办公自动化人员更轻松地入门Python数据分析。

本书覆盖了Python数据分析的主要知识点,并强调实践,通过蜂蜜电商数据分析,一边讲解Excel操作,一边讲解Python代码,使读者能够在实践应用中学习知识。本书覆盖了进行数据分析所需掌握的大部分知识点,以便读者应对各类数据分析场景,做到从实践中来,到实践中去。

对非专业编程人员来说,灵活编程是比较困难的,这是我在实践中发现的一个普遍问题。大部分Python数据分析的案例和流程相对固化,本书突出了这些固化的案例和流程,并指导读者通过修改文件路径、统计方法和参数来灵活应对大部分的数据分析任务,这样就可以大大降低开发的难度了。

本书共分为三大部分。

第一部分:介绍数据分析的概念和Python基础,为后续的学习奠定基础。这一部分主要讲解进行数据分析所需掌握的Python语法,对于其他用得不多的知识点尽量简化甚至忽略。

第二部分:讲解蜂蜜电商数据分析案例,覆盖进行数据分析所需掌握的大部分知识点。这一部分会结合Excel操作来讲解Python编程实现案例,包括读写Excel文件所需的xlwings库和openpyxl库、数据分析pandas核心库,以及数据可视化常用的Matplotlib库和Seaborn库的各个知识点。

第三部分:进行Excel数据分析实践,包括个人消费贷款数据分析和螺蛳粉连锁店销售数据分析两个实践案例。个人消费贷款数据分析主要涉及数据处理、筛选、统计分析和数据可视化等操作。螺蛳粉连锁店销售数据分析主要涉及多Excel文件和多工作表下的数据整合与分析。这一部分可以让读者体验到如何将所学的知识应用到实践中。

软件版本

本书中用到的Python版本是3.10.1,其他所涉及的数据分析库的版本分别是pandas 1.4.3、NumPy 1.23.0、openpyxl 3.0.10、xlwings 0.27.10、Matplotlib 3.5.2和Seaborn 0.11.2。

读者对象

本书适合Python零基础且需要处理大量Excel数据的办公人员阅读,如从事文秘、金融、行政、人事、销售、管理、财务等岗位的人士。本书也适合作为学习Python数据分析的入门教程。

致谢

感谢人民邮电出版社异步图书的各位编辑,尤其是杨海玲老师对本书的内容和编写提出了很多有用的建议,刘雅思老师进行了全书的审读。没有她们的努力,就没有本书的顺利出版。

同时感谢我的家人在我创作本书时对我的支持和关心。

勘误

由于能力有限,尽管尽了最大努力,书中也难免存在不足之处,如果您发现了本书存在的问题,请与异步社区或者我本人联系,以便本书后续的修订。

资源与支持

本书由异步社区出品,社区(https://www.epubit.com)为您提供相关资源和后续服务。

配套资源

本书提供配套Excel文件和Python源代码。要获得相关配套资源,请在异步社区本书页面中点击,跳转到下载页面,按提示进行操作即可。注意:为保证购书读者的权益,该操作会给出相关提示,要求输入提取码进行验证。

提交勘误

作者和编辑尽最大努力来确保书中内容的准确性,但难免会存在疏漏。欢迎您将发现的问题反馈给我们,帮助我们提升图书的质量。

当您发现错误时,请登录异步社区,按书名搜索,进入本书页面,点击“提交勘误”,输入勘误信息,点击“提交”按钮即可。本书的作者和编辑会对您提交的勘误进行审核,确认并接受后,您将获赠异步社区的100积分。积分可用于在异步社区兑换优惠券、样书或奖品。

扫码关注本书

扫描下方二维码,您将会在异步社区微信服务号中看到本书信息及相关的服务提示。

与我们联系

我们的联系邮箱是contact@epubit.com.cn。

如果您对本书有任何疑问或建议,请您发邮件给我们,并请在邮件标题中注明本书书名,以便我们更高效地做出反馈。

如果您有兴趣出版图书、录制教学视频,或者参与图书技术审校等工作,可以发邮件给本书的责任编辑(liuyasi@ptpress.com.cn)。

如果您来自学校、培训机构或企业,想批量购买本书或异步社区出版的其他图书,也可以发邮件给我们。

如果您在网上发现有针对异步社区出品图书的各种形式的盗版行为,包括对图书全部或部分内容的非授权传播,请您将怀疑有侵权行为的链接通过邮件发给我们。您的这一举动是对作者权益的保护,也是我们持续为您提供有价值的内容的动力之源。

关于异步社区和异步图书

“异步社区”是人民邮电出版社旗下IT专业图书社区,致力于出版精品IT图书和相关学习产品,为作译者提供优质出版服务。异步社区创办于2015年8月,提供大量精品IT图书和电子书,以及高品质技术文章和视频课程。更多详情请访问异步社区官网https://www.epubit.com。

“异步图书”是由异步社区编辑团队策划出版的精品IT专业图书的品牌,依托于人民邮电出版社的计算机图书出版积累和专业编辑团队,相关图书在封面上印有异步图书的LOGO。异步图书的出版领域包括软件开发、大数据、AI、测试、前端、网络技术等。

异步社区

微信公众号

第一部分 数据分析的概念和Python基础

这一部分包含两方面的内容:一方面是为什么需要进行数据分析以及数据分析的主要流程和方法,另一方面是进行数据分析所需掌握的Python语言基础知识,这些内容是进行数据分析的基石。这一部分只集中讲解数据分析中必要的和常用的知识。

第1章 数据分析基础知识

数据分析是指用适当的统计分析方法对收集来的大量数据进行分析与汇总,以便理解与利用,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息并形成结论而对数据加以详细研究和概括总结的过程。数据分析的数学基础在20世纪早期就已经确立,但一直受限于工具,直到计算机的出现,数据分析的实践才具有可能性,并得以推广。因此现代的数据分析是数学与计算机科学相结合的产物。

1.1 为什么要做数据分析

数据分析的目的是把隐藏在大量看起来杂乱无章的数据中的信息集中和提炼出来,从而找出研究对象的内在规律,供企业参考,以避免决策的盲目性和自发性。但是需要注意的是,数据分析只是根据过往的经验进行统计分析,不能作为决策时的绝对依据,因为过往的经验基于的是过去的形势,而决策只能依据当前形势,如果不看当前形势是否发生了变化,仅凭过往经验去决策,很容易犯错。从这一点来说,数据分析只能辅助决策,作为决策的参考,而决策本身必须根据自身情况和当前形势来确定。

一个人在做决策时常常需要回答3个问题。

我是谁?明确自己的定位,能做什么,不能做什么。明确自己的能力,能力必须匹配你所能做的事情。

我要做什么?根据自己的能力选择自己的方向和目标,相信读者也听过这句名言:“选择比努力更重要。”

我应该怎么做?明确了自己的能力,选择了自己的方向和目标后,就要考虑如何落实了。

企业在做决策时也需要面对类似的3个问题。

企业的业务方向是什么,能力如何?明确企业是做什么的,以及在行业的地位和现有的实力,能做什么不能做什么。

企业当前要做什么?明确企业是要延续现有的业务,还是开启新业务,新旧业务的前景如何,机遇和挑战各自是什么。

企业应该怎么开展后续的业务?明确企业现在存在的问题,以及如何改正。如果要开启新业务,那么应如何开展,如何规避风险、提高效益等。

总的来说,数据分析的作用主要是分析现状、分析具体问题和预测未来,从而达到辅助决策的目的。

1.1.1 分析现状

数据分析的一个重要目标是对现状进行分析,让企业知道现今的状况如何,一般的现状又分为以下两方面。

企业整体运营的情况,一般通过财务报表进行分析,比如资产负债表、损益表和现金流量表三大报表,这些是企业运营中最重要的报表,借助它们可以从整体上分析企业运营的情况。

企业的业务往往是由各种业务组成的,这些业务错综复杂,甚至彼此存在关联。因此还需要分析企业的业务构成,还有它们的变化趋势以及关联度,这样才能动态且准确地掌握企业运营情况。比如旧业务是持续兴旺,还是快速衰败;新业务是在萌芽阶段,还是在快速崛起或者已经处于成熟阶段,如果可以使用数据分析的方法去监控这些数据,就很有利于企业对业务进行调整。

一般来说可以分析企业的日报、旬报、月报、季报和年报等,从不同的时间维度来监控企业运营的情况以做出相应的决策。

1.1.2 分析具体问题

一般来说,进行整体分析后,对数据的分析会集中在业务问题上,比如分析哪些产品是人们喜欢的,哪些产品是人们不喜欢的。通过数据分析,对于人们喜欢但供应不足的产品,应该考虑增加供应;对于人们不喜欢但供应过多的产品,应该考虑减少供应。这样的分析对于管理人员也是有用的,比如在一个项目中,个人的能力肯定是参差不齐的,那么就要分析哪些员工能力强,可以多委派些工作,哪些员工能力弱,需要培训和改进,从而提高团队的整体能力,减少项目的风险。

1.1.3 预测未来

对现有业务的分析,有时还需要预测未来的情况。比如奶茶业,受地域位置的影响,北京的奶茶业肯定是很难和广州的奶茶业相比的,因为广州位于亚热带,气温高、夏季时间长,人们对奶茶的需求更大;同时,奶茶业也受季节的影响,冬天喝冷饮的人总体较少。用历年的销售数据来预测未来什么产品应该减少,什么产品应该增加,甚至对应的产品应该减少多少或增加多少等,都需要进行数据分析,才能做出更为准确和合理的判断,以指导企业的规划。

若要开展新业务,需要对其进行预估。比如现今柳州螺蛳粉成为最受欢迎的小吃之一,那么其原因是什么?其他相关的企业经营数据如何?如果要加入这个行业,风险点在哪里?投资和收益比又如何?这些都是在开展新业务之前需要分析的问题,通过分析结果可以预估新业务的可行性。

1.2 为什么要使用Python做数据分析

本节先介绍数据分析的历史,再讨论为什么使用Python进行数据分析会成为主流。

1.2.1 数据分析的历史

数据分析的数学模型始于20世纪早期,但是受限于工具,数据分析一直难以进行,直到计算机出现,数据分析才逐渐得以发展。在计算机出现之前,数据分析主要集中在数据采集上。但是早期数据分析并没有随着计算机的出现而兴盛起来,一个根本的原因是早期计算机的功能十分有限,且实现数据分析的方法也很复杂,需要大量学习相关知识后才能使用计算机进行数据分析,所以早期计算机出现时,主要的数据分析集中在高精尖项目上,比如航天事业。从这一点来看,数据分析是十分依赖工具的,因此谈到数据分析的历史,我们一定要注意工具的重要性。

真正能让办公人员进行数据分析的是20世纪90年代计算机办公软件中电子表格工具(尤其是微软Office组件中的Excel软件)的出现。办公人员通过操作表格,大大降低了学习的难度,也能够快速地得到自己想要的结果。Excel的功能不断地增强,办公人员从中受益良多。那时候互联网还没有发展起来,大部分企业的数据规模较小,业务也没那么复杂,所以一般来说做数据分析使用Excel就已经足够了。

但是随着互联网的兴起,尤其是微软Windows 98操作系统推出后,互联网开始普及。紧接着就是移动互联网的发展,在2008年后,移动互联网得到了长足的发展,使得企业业务规模大幅度增加,数据的规模也随之不断膨胀,与此同时带来的是业务日趋复杂化。而Excel在面对大量且复杂的数据时也出现捉襟见肘的情况,甚至难以应对,比如使用Excel处理5000条记录可以轻松完成,但是要处理50万条记录就完全不同了。在计算机中打开有50万条记录的Excel文件时,计算机已经因消耗资源过多出现了严重卡顿,接下来操作Excel的每一步都伴随着卡顿,最终使得操作无法继续进行。因此这个时候更多的数据分析工作只得交由软件开发公司处理,由软件开发公司提取数据、制作报表等。

提出需求,让软件开发公司完成提取数据和制作各类报表等工作,这样进行数据分析,应该说效果是好的。但是很快就会发现存在以下各类问题。

软件开发公司的开发是有周期的,而且开发周期一般较长,因此我们很难及时得到数据分析的结果。一般软件开发公司开发大规模系统以5年左右为周期,我们不可能等待数年后才解决问题。

有些企业在聘请软件开发公司人员开发项目后还会留小部分人员做后续的开发和运维,但是开发人员对业务的掌握程度参差不齐,有时候需要通过和开发人员进行大量的沟通才能让开发人员掌握业务,开发效率低下。

业务是不断发展的,有时候数据分析的口径也会发生变化,而向软件开发公司提出新的需求并进行重新开发涉及商务谈判、需求分析、软件开发和验收等阶段,这个过程注定是漫长的。

由此可见,单靠软件开发公司进行数据分析,确实可以处理很大一部分问题,但一些临时出现的、业务发生变化的和新增的需求是无法及时满足的。为了适应这些变化,掌握一种能够基于基础数据自行进行数据分析的工具就十分有必要了。

1.2.2 为什么Python+Excel会成为数据分析的主流工具

目前办公人员做数据分析使用的主要工具有Excel、SQL和Python等。

对于传统的办公自动化人员,数据分析工具以Excel为主。SQL用于对数据库进行数据分析。使用SQL进行数据分析,一方面对办公人员来说学习难度较大,因为SQL涉及计算机数据库的很多复杂概念,对新手不算特别友好,不太适合一般办公人员学习;另一方面操作数据库也会带来比较大的风险,一旦操作不当容易导致数据安全性问题,得不偿失。

SQL主要针对数据库,作为操作数据库的语言,虽然在性能上比Python好很多,但是在灵活性上远远不如Python,Python还有更多支持数据分析功能的模块。比如,在进行数据分析时,经常要绘制各类图表,此时SQL就无能为力了,而对Python来说,只需要使用Matplotlib库就可以了,而且学习起来也相对简单。从实际操作层面来说,除非是海量级的数据(一般是百万级或以上)才需要考虑使用SQL,否则使用Python就足够了,所以在目前的办公自动化的大背景下,使用Python是明智的选择。

计算机编程语言很多,流行的有C/C++、Java、Python、R和Go语言等,为什么Python会脱颖而出呢?主要有3个原因:一是Python是当下和未来的主流语言;二是Python易学易用;三是Python语法高效。

(1)Python是当下和未来的主流语言。目前人工智能(artificial intelligence,AI)、虚拟现实(virtual reality,VR)、网站、爬虫等领域都大量使用了Python,而Python的使用率还在不断增长。在Tiobe网站的2022年4月计算机世界编程语言排行榜中,Python排名第一,如图1-1所示。

图1-1 2022年4月计算机世界编程语言排行榜前10名

可见当前Python已经成为全球主流的编程语言,其前景远大。

(2)Python易学易用。Python的定位很明确,就是一种简单、易用但专业、严谨的通用组合语言,普通人也能够很容易掌握。Python对初学者十分友好,其语法简洁明了,能给初学者带来快速掌握的学习体验。即使是对编程完全不了解的零基础人士,只要愿意学习,也可以在几天的时间里学会Python的基础部分,然后用Python来完成很多任务,比如运用一些常见的公式。

(3)Python语法高效。如果要绘制图1-2所示的柱形图,使用C/C++语言需要编写500行代码,使用Java需要编写100多行代码,而使用Python只需要编写20多行代码。显而易见,使用Python最方便,因为维护20行代码不算复杂,属于办公人员可以承受的范围,而使用C/C++和Java产生的代码量比较大,办公人员就很难承受了。

图1-2 各季度营收额同比柱形图

1.2.3 使用Python做数据分析的优势

使用传统办公软件进行数据分析时大多数是基于Excel的,但是随着互联网,尤其是移动互联网的发展,企业通过网络获得的数据越来越多,同时业务也渐趋复杂化和多样化。在这样的趋势下,继续使用Excel进行数据分析变得越来越困难,主要反映在以下4个方面。

在Excel中一次操作只能处理少量的数据,当用Excel打开包含数万行甚至更多行记录的文件时,就会出现卡顿现象,导致操作不顺畅、效率低下。

有时候做数据分析需要处理多个Excel文件,这样会使操作变得十分复杂和麻烦。比如人事部门需要对员工进行管理,而员工可能有数百人,每个员工都对应一个Excel文件,手动操作几百个Excel文件的工作量会很大,也容易出现操作失误。

Excel的功能是有限的,无法满足日趋复杂的业务需求。

Excel需要手动反复操作,不仅耗时,而且容易操作失误。

Python易学易用,可以通过简短的代码来解决上述问题,所以它成为当前主流的办公数据分析工具。其优势体现在以下4个方面。

使用Python能够处理上万行到几十万行的数据,可以有效改善使用Excel处理大量数据时发生卡顿的现象,提高办公效率,原本要好几天才能解决的问题,使用Python几分钟就能解决。

对于多个Excel文件,Python提供了很多工具来整合数据,避免反复操作Excel文件。

Python是一门计算功能强大的编程语言,具有很强的计算能力,可以满足日趋复杂的业务需求。

Python不需要手动反复操作,只要编写好代码,经过测试后就能高效地实现数据分析了,还可以降低出错的可能性。

可见,使用Python进行数据分析已是大势所趋。

1.3 数据分析的对象

数据分析到底需要分析些什么呢?总体来说,数据分析可以从不同的角度进行操作,常见的有总体指标分析、对比分析、按时间维度分析、概率学分析、按指定维度分析等。虽然数据分析的角度很多,但是目的都是分析业务和辅助决策。

1.3.1 总体指标分析

总销量、总订单数以及规模、账户总额等,这些是十分常用的总体指标。在企业数据分析中,最典型的莫过于分析企业的资产负债表、损益表和现金流量表,它们都是衡量一个企业总体情况的数据,可以直接反映企业整体的财务和运营情况。

1.3.2 对比分析

对比分析也是十分常见的,比如企业常常会进行环比分析和同比分析,环比分析是对比上月的数据,同比分析是对比去年同期的数据。对比分析的目的是反映业务的增减量,从而预估未来的情况。事实上,还可以对比不同种类业务的变化趋势。比如A款手机去年畅销,但是今年遇冷,而B款手机今年畅销,那么进行对比后,就应该适当减少A款手机的进货量,增加B款手机的进货量。分析结果会影响企业的决策方向。

1.3.3 按时间维度分析

按时间维度分析也是十分常见和重要的,比如年报、季报和月报等。通过数据分析可以得到企业周期性的整体运营情况,也可以预估企业发展的趋势。对于一些特别关注的业务,可以采用旬报、周报,甚至日报等方式监测数据,以便及时做出调整。在数据分析和目标对比完成后,就可以在下一个业务周期调整企业的运营策略了。

1.3.4 概率学分析

对一些需要监测许多货物样本的企业来说,概率学分析是十分常用的。比如对一批货物进行检验,检验结果有合格与不合格之分,相应会产生数学期望、方差和标准差等概率学的指标,此外还有众数、中位数、最大值和最小值等(第6章会讨论)。采用概率学分析的方法检验这批货物,可以评估这批货物的整体质量。

1.3.5 按指定维度分析

影响业务的维度很多,但是有时候某个维度的影响比较大。比如以互联网广告收入为主的企业,其关注点可能更多在于用户访问量,因为其广告收入主要依靠网站的流量。鉴于此,这类企业就有必要做用户访问的流量数据分析,看看用户主要访问什么页面、点击什么类型的广告,以辅助预测未来主要接受哪方面的广告、主要的业务方向在哪里。这些维度会因企业业务的不同而有所不同,还会随着社会环境的发展而变化,找准企业发展所需的维度进行分析十分重要。

1.4 数据分析的流程

既然数据分析有如此多好处,那么如何进行数据分析呢?在做一件事情之前,需要先回答两个问题:第一个问题是要做什么,第二个问题是怎么做。要做什么决定了怎么做,因此第一步是熟悉企业的业务和数据,同时明确数据分析的目标,第二步才是思考怎么做。

企业的业务和数据的特点将决定使用什么工具进行数据分析。假如企业的业务很少,数据很简单,那么手动简单处理就可以了,此时采用Excel进行处理就很方便,完全不需要用到Python。如果企业的数据很多,业务也复杂,或者需要处理的文件很多,那么使用Python辅助完成数据分析就很有必要了。

在明确了做什么的问题以后,就要考虑怎么做的问题了。对办公人员来说,数据分析的一般流程如图1-3所示。

图1-3 数据分析的一般流程

下面对图1-3所示的各个步骤进行讨论。

1.4.1 数据获取

数据获取是指获得业务基础数据,而业务基础数据是进行数据分析的前提条件。一般来说,办公人员可以从ERP系统及其他信息系统(或者数据库等)导出各种文件作为业务基础数据。比如常见的Excel文件、逗号分隔值(comma-separated values,CSV)文件、JSON文件等。有些企业甚至直接使用数据库文件作为业务基础数据,允许办公人员或者数据分析师访问。当办公人员或数据分析师获得业务基础数据后,就可以对这些数据进行数据分析了。

1.4.2 数据处理

在获得业务基础数据后,要做的第一件事是验证数据的合法性。常见的非法数据有以下几种。

冗余数据:比如订单编号重复、存在两条相同的记录等。

逻辑错误:有些数据存在业务逻辑错误,有待修复,比如单品价格和购买数量的乘积不等于总价。

数据缺失:比如有的订单没有与对应的客户信息相关联。

在完成数据验证后,需要处理默认值的问题,比如有些订单享有优惠,而有些订单不享有,这样导出的基础数据中就可能存在默认值,在计算时需要考虑通过填充0等方式进行相应处理。

1.4.3 数据筛选

数据筛选也是数据分析中的重要步骤。以销售订单为例,存在业务办理成功和失败的情况,此外还有退货的订单,而进行统计分析时,我们往往只需要那些办理成功的订单数据,而不是办理失败和退货的订单数据。有时候,我们可能只需要部分数据,比如只对某类型产品的销量数据感兴趣,这时就需要根据对应的产品类型进行订单数据筛选,以进行下一步的数据分析。

1.4.4 数据分析

在处理完数据并且筛选出需要的数据后,就可以对数据进行分析了。分析数据常见的操作包括统计订单数、销售量求和及求平均值等。对于需要用概率学分析的数据,可能还需要考虑最大值、最小值、均值、方差和标准差等。常见的还有按时间维度分析,比如月报、季报和年报等内容,此外还有同比分析和环比分析。

1.4.5 结果保存

对数据进行分析后,接下来就要考虑对分析的结果进行保存,通常会保存分析的结果和图表等内容。

1.4.6 数据可视化

数据分析的结果可能十分复杂,或者涉及很多专业的词语,看起来不够直观。这个时候可以考虑使用数据可视化的方法进行数据展示,常见的是用图表展示,这样有利于人们快速理解数据分析的结果,给人以深刻的印象。

1.4.7 数据追踪和验证

数据并不是一成不变的,有可能一开始获取的基础数据不准确,需要做相应调整和修复,调整和修复这些基础数据后,需要重新进行数据分析。有可能数据分析使用的计算方法不当,需要进行调整。还有可能统计口径发生了变化,也需要重新调整和追踪数据。因为数据分析并不意味着单次分析后就完成了,而是需要进行多次分析。此外,还需要与各方核对和验证数据,以使数据一致。

读者服务:

微信扫码关注【异步社区】微信公众号,回复“e60788”获取本书配套资源以及异步社区15天VIP会员卡,近千本电子书免费畅读。

相关图书

深度学习的数学——使用Python语言
深度学习的数学——使用Python语言
动手学自然语言处理
动手学自然语言处理
Web应用安全
Web应用安全
Python高性能编程(第2版)
Python高性能编程(第2版)
图像处理与计算机视觉实践——基于OpenCV和Python
图像处理与计算机视觉实践——基于OpenCV和Python
Python数据科学实战
Python数据科学实战

相关文章

相关课程