用Python语言做数据分析基本思路和流程
来源:CPDA数据分析师 熊恩成 / 作者: / 时间:2019-12-13
当下用PYTHON做数据分析实在是太火了!大多数招聘信息里都要求应聘者会使用PYTHON做数据分析。PYTHON语言功能确实很强大,俗称“胶水语言”。那么我们大多数职场人士真的有机会使用到PYTHON吗?或者说会PYTHON语言,是必备技能,还是加分项?
一、客观条件还有不足
熊大在之前分享的《企业数字化转型的关键是什么》里指出,经抽样调查,目前大多数企业基本的数字化都还未实现,更不用说业务的数据化和在线化。真实现状是,许多企业使用的依然是一个个独立的系统,每个系统的数据基本上也是“独立的”,没有很好的连接起来,其以物理的状态存储在数据库中,没有发挥出数据应有的价值。
而目前,许多企业已意识到了数据的价值,于是纷纷招聘数据分析方面的人才。然而招聘进来的人发现,日常做数据分析,需要一个系统一个系统地读取数据。仅在各个系统读取数据可能就会花费大量的时间,后面还要用EXCEL等工具把数据分别预处理好,极大耗费时间成本。
企业招聘进来的数据分析师,本应发挥应有的价值,但实际操作中,其他岗位人员认为读取数据、预处理等工作都应是数据分析人员的,因此,数据分析人员需占用多数时间应付一些基础性、重复性的工作,而真正有价值的事情反而投入不足,无法有效顾及。
并且,实际中令数据分析人员更加痛苦的是,他们会和企业老板提出改进意见,比如把企业的业务数据化、在线化,或者是先把各个子系统数据进行集中存储,建立企业自己的数据仓库,开发自动化数据产品,提高效率等方案。但是,这些都需要花费大量时间和资金,短期内还不一定有成效。企业老板会考虑,到底值不值得投入?很多时候,可能自己也没有思路,企业里也没相应的人才,所以干脆就拖着,到时再看……
二、是必备技能,还是加分项
鉴于当下这种现状,对于想从事数据分析的朋友来说,要么力争去头部企业,因为他们的数据丰富,PYTHON的用武之地更大,因此这就是必备技能。而对于无法进入大厂的朋友来说,会PYTHON可能仅仅只是个加分项,因为使用的机会并不多。当然我们要用发展的眼光来看待,企业数字化转型也是一个逐步实现的过程,不可能一蹴而就。未来,PYTHON的使用机会很多,因此学会PYTHON还是很有必要的,前提是在你条件允许的情况下去学习。
对于那些已工作多年,现在要从事数据分析方面的业务的朋友,建议你把数据分析的工具熟练使用,比如EXCEL、SPSS等。由于有工作经验,则需要建立自己的数据分析思维,掌握必要的数据分析方法。熊大自己的经验是,自从系统学习了数据分析方面的思维和方法,再结合自身的工作经验,现在已能很好地把数据分析技能应用在实际业务场景中,虽然许多东西还在不断完善和改进中。
三、基本思路和流程
对于那些做过实际数据分析业务的朋友,应该对数据分析的基本思路和流程都比较熟悉,也初步掌握了数据分析的思维和框架。比如能够熟练使用SPSS、SAS、EXCEL等分析工具完成中小型的数据分析项目。如果是用Python语言,该怎么做数据分析呢?
基本思路和流程如下:
1、业务目标的确定。这点与分析工具和语言没有直接关系,这里不做过多阐述。核心是你想解决什么实际问题?必须要先明确。
2、数据的获取。我们平时用SPSS和EXCEL做数据分析的时候,都需要事先把数据从系统里导出,然后再导入到分析工具里,再进行下一步。相当于是把要分析的数据“装入”到分析工具里进行加工处理。
若用PYTHON,如何操作呢?原理基本一样,直接在程序运行环境里写一行程序代码即可。当年做PHP开发,程序文件里也是开头用几行PHP代码实现了网站应用与数据的连接。理论上这相当于省去了数据的导出导入步骤,节省了时间。
个人认为掌握这个思路非常重要。当你真正面临“大数据”时,把数据用传统的方法“导入导出”是不太现实的。你需要把自己置于一个虚拟的空间里(云上),想象下,你可操作的“大数据”在云空间的A处,“大数据”的分析框架在B处,要做分析,就需要把A和B使用PYTHON程序进行连接,把数据“装入到”大数据分析框架中,再借助云的高强计算能力,实现对“大数据”的快速实时分析。看,原理是不是差不多?
3、数据的查看。我们平时用EXCEL打开数据表时,可以直观的查看里面的数据情况,比如字段有哪些?有多少数据量?数据的质量怎么样?缺失值或空值多不多?如果用PYTHON查看的话也很简单,写几行代码,运行一下就可以知道表中数据的所有情况。再比如对“异常值”的检测,使用PYTHON,同样可以用“箱线图”显示出来。
个人体会,当数据量不大的时候,使用工具和程序没什么差别。然而一旦数据量达到一定量级,我们都知道像EXCEL这类的工具,数据量稍微大点,打开就很慢,甚至会崩溃,这时使用PYHON程序的优势就显现出来了。
4、数据的预处理。这点也很好理解,例如我们用EXCEL做数据的拆分、合并或者转换,用PYTHON是同样的原理,比如用“split()”做数据拆分,只需要写一行代码即可对字段所对应的数据进行拆分。其他都是类似的操作。是不是很简单?
我们都知道数据分析工具也无非是某些程序语言编写的,无论是EXCEL、SPSS还是SAS。只不过这些工具是通过界面的操作,把“人机对话”的难度大大降低。拿智能手机来说,以后的手机只会更加简单和实用,复杂的机型肯定会被抛弃。
总结下,近几年内对于从事大对数的人来说,使用好EXCEL、SPSS就能应对日常大部分数据分析工作。但是当企业数据量在快速增多的情况下,就需要学会使用更先进的工具来实现。大数据分析师,需要熟悉云数据库、云存储、云计算及各类算法的使用场景,还要掌握大数据分析框架,使自己真正达到能“指挥千军万马”的境界。
对于做数据分析的朋友来说,我们也只需要掌握PYTHON语言中与数据分析紧密相关的几个包,不必要全部都学。PYTHON虽然入门比较简单,但真正用好它还需要花费一定时间。因此我们当务之急要做的,常用的工具会使用,PYTHON常用的函数包尽量会用,工作中遇到问题,哪个能快速解决就使用哪个,终目的是解决问题。
熊大认为使用语言与操作工具做数据分析的基本思路和流程是差不多的,无论使用任何“武器”,只要“能消灭敌人就好”,前提是我们对每一种武器都要熟练使用,并且能高效地解决问题。