说来我正式接触数据分析也快一年,对速成还是有一些心得。优秀的数据分析师是不能速成的,但是零经验也有零经验的捷径。
以上的前提针对入门,目的是达到数据分析师的门槛,顺利拿到一份offer,不涉及数据挖掘等高级技巧。我的方法倾向互联网领域,不论是分析师这个职位,还是运营、产品的能力发展都是适用的。其他领域就仁者见仁了。
市面上有《七周七数据库》,《七周七编程语言》。今天我们就《七周七学习成为数据分析师》。
没错,七周。
第一周:Excel学习掌握
如果Excel玩的顺溜,你可以略过这一周。不过介于我入行时也不会vlookup,所以有必要讲下。
重点是了解各种函数,包括但不限于sum,count,sumif,countif,find,if,left/right,时间转换等。
Excel函数不需要学全,重要的是学会搜索。即如何将遇到的问题在搜索引擎上描述清楚。
我认为掌握vlookup和数据透视表足够,是最具性价比的两个技巧。
学会vlookup,SQL中的join,Python中的merge很容易理解。
学会数据透视表,SQL中的group,Python中的pivot_table也是同理。
这两个搞定,基本10万条以内的数据统计没啥难度,80%的办公室白领都能秒杀。
Excel是熟能生巧,多找练习题。还有需要养成好习惯,不要合并单元格,不要过于花哨。表格按照原始数据(sheet1)、加工数据(sheet2),图表(sheet3)的类型管理。
专栏上写了三篇Excel的文章,比较简单,大体介绍了Excel应用,可以作为职场新人的指南。
第一篇数据分析—函数篇。主要简单讲解常用的函数,以及与之对应的SQL/Python函数。
第二篇数据分析—技巧篇。主要简单讲解我认为很有新价比的功能,提高工作效率。
第三篇数据分析—实战篇。主要将前两篇的内容以实战方式进行,简单地进行了一次数据分析。数据源采用了真实的爬虫数据,是5000行数据分析师岗位数据。
下面是为了以后更好的基础而附加的学习任务。
了解单元格格式,后期的数据类型包括各类timestamp,date,string,int,bigint,char,factor,float等。
了解数组,以及怎么用(excel的数组挺难用),Python和R也会涉及到 list。
了解函数和参数,当进阶为编程型的数据分析师时,会让你更快的掌握。
了解中文编码,UTF8和ASCII,包括CSV的delimiter等,以后你会回来感谢我的。
养成一个好习惯,不要合并单元格,不要过于花哨。表格按照原始数据、加工数据,图表的类型管理。
如果时间还有剩余,可以看大数据时代,培养职业兴趣。
再来一道练习题,我给你1000个身份证号码,告诉我里面有多少男女,各省市人口的分布,这些人的年龄和星座。(身份证号码规律可以网上搜索)
第二周:数据可视化
数据分析界有一句经典名言,字不如表,表不如图。数据可视化是数据分析的主要方向之一。除掉数据挖掘这类高级分析,不少数据分析就是监控数据观察数据。
数据分析的最终都是要兜售自己的观点和结论的。兜售的最好方式就是做出观点清晰数据详实的PPT给老板看。如果没人认同分析结果,那么分析也不会被改进和优化,不落地的数据分析价值又在哪里?
首先要了解常用的图表:
各类图表的详细介绍可以查看第四篇文章:数据可视化:你想知道的经典图表全在这
了解图表后,还应该学会报表制作,这里准备了第五篇:数据可视化:打造高端的数据报表。将教会大家Excel的高级图表用法。
如果还不过瘾,我们得掌握信息图和BI,下图就是微软的Power BI:
BI(商业智能)和图表的区别在于BI擅长交互和报表,更擅长解释已经发生和正在发生的数据。将要发生的数据是数据挖掘的方向。
BI的好处在于很大程度解放数据分析师的工作,推动全部门的数据意识,另外降低其他部门的数据需求(万恶的导数据)。
BI市面上的产品很多,基本都是建立仪表盘Dashboard,通过维度的联动和钻取,获得可视化的分析。第六篇:数据可视化:深入浅出BI 将以第一周的实战数据学习BI,上图的就是学习后的成果。
数据可视化的学习就是三个过程,了解数据(图表),整合数据(BI),展示数据(信息化)。
可视化也和审美息息相关,很多直男代表并不擅长做图,没关系,抽空可以看书:数据之美
PPT也别落下,Excel作图多练习,不会有坏处的。
第三周:分析思维的训练
这周我们轻松一下,学学理论知识。
分析思维首推大名鼎鼎的金字塔原理 ,帮助数据分析师结构化思维。如果金字塔原理让你醍醐灌顶,那么就可以学思维导图,下载一个XMind中文网站,或者在线用百度脑图(百度难得不被骂的产品)。
如果不想看金字塔原理,那么就看第七篇文章:如何培养麦肯锡式的分析思维。将书本的内容提炼了大部分。
再了解SMART、5W2H、SWOT、4P理论、六顶思考帽等框架。这些框架都是大巧不工的经典。你要快速成为数据分析师,思考方式也得跟着改变。网上搜咨询公司的面试题,搜Case Book。题目用新学的思维导图做,先套那些经典框架,做一遍,然后去看答案对比。
等思维框架建立好,我们应该往里面塞点数据分析的思维了,如何建立数据分析的思维框架。两篇文章相结合,就能出师了。
这里送三条金句:
一个业务没有指标,则不能增长和分析
好的指标应该是比率或比例
好的分析应该对比或关联。
举一个例子:我告诉你一家超市今天有1000人的客流量,你会怎么分析?
这1000人的数量,和附件其他超市比是多是少?(对比)
这1000人的数量比昨天多还是少?(对比)
1000人有多少产生了实际购买?(转化比例)
路过超市,超市外的人流是多少?(转化比例)
这是一个快速搭建分析框架的方法。如果只看1000人,是看不出分析不出任何结果。
优秀的数据分析师会拷问别人的数据,而他本身的分析也是经得起拷问,这就是分析思维能力。需要确切明白的是,一周时间锻炼不出数据思维,只能做到了解。数据思维是不断练习的结果,我只是尽量缩短这个过程。
第四周:数据库学习
Excel对十万条以内的数据处理起来没有问题,但是互联网行业就是不缺数据。但凡产品有一点规模,数据都是百万起。这时候就需要学习数据库。
数据库入门看这篇文章:写给新人的数据库指南
越来越多的产品和运营岗位,会在招聘条件中,将会SQL作为优先的加分项。
SQL是数据分析的核心技能之一,从Excel到SQL绝对是数据处理效率的一大进步。
学习围绕Select展开。增删改、约束、索引、数据库范式均可以跳过。SQL学习不需要买书,W3C学习就行了,SQL 教程。大多数互联网公司都是MySQL,我也建议学,性价比最高。
主要了解where,group by,order by,having,like,count,sum,min,max,distinct,if,join,left join,limit,and和or的逻辑,时间转换函数等。
如果想要跟进一步,可以学习row_number,substr,convert,contact等。另外不同数据平台的函数会有差异,例如Presto和phpMyAdmin。
你看,和Excel的函数都差不多。按照SQL,从入门到熟练SQL,从熟练到掌握这两篇的内容学习。虽然没有实战的打磨,但是了解一个大概够了。
期间你不需要考虑优化和写法丑陋,查询几秒和几分钟对数据分析师没区别,跑数据时喝杯咖啡呗,以后你跑个SVM都能去吃饭了。
网上也能搜索SQL相关的练习题,刷一遍就行。也能自己下载数据库管理工具,找些数据练习。我用的是Sequel Pro。
附加学习:
如果这周的学习充裕,可以了解MapReduce原理。
来一道练习题,表A是用户的注册时间表,表B是用户所在地,写出各地区每月新注册用户的查询SQL。掌握到这个程度,基本够用,虽然往后工作中会有更多变态数据需求。
第五周:统计知识学习
很遗憾,统计知识是我最薄弱的地方,也是数据分析的基础之一。
统计知识会要求我们以另一个角度看待数据。当你知道AB两组的差异用平均值看是多傻的事情,你的分析技巧也会显著提高。
这一周努力掌握描述性统计,包括均值、中位数、标准差、方差、概率、假设检验、显著性、总体和抽样等概念。详细的数学推导不用细看,谁让我们是速成呢,只要看到数据,知道不能怎么样,而是应该这样分析即可。
Excel中有一个分析工具库,简单强大。对列1的各名词做到了解。如果是多变量多样本,学会各种检验。
多说一句,老板和非分析师不会有兴趣知道背后的统计学原理,通常要的是分析后的是与否,二元答案。不要告诉他们P值什么的,告诉他们活动有效果,或者没效果。
第六周:业务学习(用户行为、产品、运营)
这一周需要了解业务。对于数据分析师来说,业务的了解比数据方法论更重要。当然很遗憾,业务学习没有捷径。
我举一个数据沙龙上的例子,一家O2O配送公司发现在重庆地区,外卖员的送货效率低于其他城市,导致用户的好评率降低。总部的数据分析师建立了各个指标去分析原因,都没有找出来问题。后来在访谈中发觉,因为重庆是山城,路面高低落差比较夸张,很多外卖人员的小电瓶上不了坡…所以导致送货效率慢。
这个案例中,我们只知道送货员的送货水平距离,数据上根本不可能知道垂直距离这个指标。这就是数据的局限,也是只会看数据的分析师和接地气分析师的最大差异。
对于业务市场的了解是数据分析师工作经验上最大优势之一。既然是零经验面试,公司肯定也知道刚入门分析师不会有太多业务经验,不会以这个卡人。所以简单花一周了解行业的各指标。
以知乎最多的互联网行业为例。至少了解活跃用户数,活跃用户率,留存率,流失率,传播系数等通用概念。
还有一个小建议,现在有不少第三方的数据应用,囊括了不少产品领域的数据分析和统计。自学党们即使没有生产环境的数据,也可以看一下应用Demo,有好处的。
除了业务知识,业务层面沟通也需要掌握。另外建议在面试前几天收集该行业的业务强化一下。
第七周:Python/R 学习
终于到第七周,也是最痛苦的一周。这时应该学习编程技巧。
是否具备编程能力,是初级数据分析和高级数据分析的风水岭。数据挖掘,爬虫,可视化报表都需要用到编程能力。掌握一门优秀的编程语言,可以让数据分析师事半功倍,升职加薪,迎娶白富美。(SAS/SPSS我不了解,所以不做指导)
这里有两条支线,学习R语言或Python。速成只要学习一条,以后再补上另外一门。
我刚好两类都学过。R的优点是统计学家编写的,缺点也是统计学家编写。如果是各类统计函数的调用,绘图,分析的前验性论证,R无疑有优势。但是大数据量的处理力有不逮,学习曲线比较陡峭。Python则是万能的胶水语言,适用性强,可以将各类分析的过程脚本化。Pandas,sklearn等各包也已经追平R。
如果学习R,我建议看R语言实战 , 照着书本打一遍代码,一星期绰绰有余。另外还有一本 统计学 ,偏知识理论,可以复习前面的统计学知识。
R学习和熟悉各种包。知道描述性统计的函数。掌握DataFrame。如果时间有余。可以再去学习ggplot2。
Python拥有很多分支,我们专注数据分析这块,入门可以学习 深入浅出Python 。也是把代码写一遍。
需要学会条件判断,字典,切片,循环,迭代,自定义函数等。知道数据领域最经典的包Pandas+Numpy。
在速成后的很长一段时间,我们都要做调包侠。
这两门语言最好安装IDE,R语言我建议用RStudio,Python我建议用 Anaconda。都是数据分析的利器。
Mac自带Python2.7,但现在Python 3已经比几年前成熟,而且没有编码问题。各类教程也足够多,不要抱成守旧了。Win的电脑,安装Python会有环境变量的问题,是个大坑(R的中文编码也是天坑)。
到这里,刚刚好是七周。如果还需要第八周+,则是把上面的巩固和融会贯通,毕竟速成是以转岗或拿offer为目的。有机会,我会专门写文章讲解每一周的具体知识,并且用爬虫爬一些数据做练习和案例。
成为数据分析师后,坑才刚刚开始,努力吧。
如果你靠七周的练习最终拿到了offer,告诉我一下,我很欣慰了。