如何快速成为数据分析师

2022-11-27 09:12发布

诚然,任何一门技术都不可能一蹴而就,更不可能一夜成才。这世上,没有什么牛逼的事情是能够速成的,越是专业、越是基层、收益周期越长的技能越是这样,数据分析师也不例外

诚然,任何一门技术都不可能一蹴而就,更不可能一夜成才。这世上,没有什么牛逼的事情是能够速成的,越是专业、越是基层、收益周期越长的技能越是这样,数据分析师也不例外
3条回答
2022-11-27 09:52

诚然,任何一门技术都不可能一蹴而就,更不可能一夜成才。这世上,没有什么牛逼的事情是能够速成的,越是专业、越是基层、收益周期越长的技能越是这样,数据分析师也不例外。但这并不代表,我们不能通过一些有效的方法,把学习的过程变得高效而有趣,让自己的数据分析师学成之旅起到事半功倍的作用。倘若真的想一口吃成一个胖子,到时去面试去工作,你会被自己的好不扎实的专业基底伤害得遍体鳞伤。

学习数据分析师之前,你必须清楚自己想要达成什么目标。也就是说,你想通过这门技术来解决哪些问题或实现什么计划。有了这个目标,你才能清晰地开展自己的学习规划,并且明确它的知识体系。只有明确的目标导向,学习必备也是最有用的那部分,才能避免无效信息降低学习效率。

1、明确知识框架和学习路径

数据分析这件事,如果你要成为数据分析师,那么你可以去招聘网站看看,对应的职位的需求是什么,一般来说你就会对应该掌握的知识架构有初步的了解。你可以去看看数据分析师职位,企业对技能需求可总结如下:

SQL数据库的基本操作,会基本的数据管理;

会用Excel/SQL做基本的数据提取、分析和展示;

会用脚本语言进行数据分析,Python or R;

有获取外部数据的能力加分,如爬虫或熟悉公开数据集;

会基本的数据可视化技能,能撰写数据报告;

熟悉常用的数据挖掘算法:回归分析、决策树、分类、聚类方法;

高效的学习路径是什么?就是数据分析的流程。一般大致可以按“数据获取-数据存储与提取-数据预处理-数据建模与分析-数据可视化”这样的步骤来实现一个数据分析师的学成之旅。按这样的顺序循序渐进,你会知道每个部分需要完成的目标是什么,需要学习哪些知识点,哪些知识是暂时不必要的。然后每学习一个部分,你就能够有一些实际的成果输出,有正向的反馈和成就感,你才会愿意花更多的时间投入进去。以解决问题为目标,效率自然不会低。

按照上面的流程,我们分需要获取外部数据和不需要获取外部数据两类分析师,总结学习路径如下:

1.需要获取外部数据分析师:

python基础知识

python爬虫

SQL语言

python科学计算包:pandas、numpy、scipy、scikit-learn

统计学基础

回归分析方法

数据挖掘基本算法:分类、聚类

模型优化:特征提取

数据可视化:seaborn、matplotlib

2.不需要获取外部数据分析师:

SQL语言

python基础知识

python科学计算包:pandas、numpy、scipy、scikit-learn

统计学基础

回归分析方法

数据挖掘基本算法:分类、聚类

模型优化:特征提取

数据可视化:seaborn、matplotlib

接下来我们分别从每一个部分讲讲具体应该学什么、怎么学。

数据获取:公开数据、Python爬虫

如果接触的只是企业数据库里的数据,不需要要获取外部数据的,这个部分可以忽略。

外部数据的获取方式主要有以下两种。

第一种是获取外部的公开数据集,一些科研机构、企业、政府会开放一些数据,你需要到特定的网站去下载这些数据。这些数据集通常比较完善、质量相对较高。

另一种获取外部数据费的方式就是爬虫。

比如你可以通过爬虫获取招聘网站某一职位的招聘信息,爬取租房网站上某城市的租房信息,爬取豆瓣评分评分最高的电影列表,获取知乎点赞排行、网易云音乐评论排行列表。基于互联网爬取的数据,你可以对某个行业、某种人群进行分析。

在爬虫之前你需要先了解一些 Python 的基础知识:元素(列表、字典、元组等)、变量、循环、函数(链接的菜鸟教程非常好)……以及如何用成熟的 Python 库(urllib、BeautifulSoup、requests、scrapy)实现网页爬虫。如果是初学,建议从 urllib 和 BeautifulSoup 开始。(PS:后续的数据分析也需要 Python 的知识,以后遇到的问题也可以在这个教程查看)

网上的爬虫教程不要太多,爬虫上手推荐豆瓣的网页爬取,一方面是网页结构比较简单,二是豆瓣对爬虫相对比较友好。

掌握基础的爬虫之后,你还需要一些高级技巧,比如正则表达式、模拟用户登录、使用代理、设置爬取频率、使用cookie信息等等,来应对不同网站的反爬虫限制。

除此之外,常用的的电商网站、问答网站、点评网站、二手交易网站、婚恋网站、招聘网站的数据,都是很好的练手方式。这些网站可以获得很有分析意义的数据,最关键的是,有很多成熟的代码,可以参考。

数据存取:SQL语言

你可能有一个疑惑,为什么没有讲到Excel。在应对万以内的数据的时候,Excel对于一般的分析没有问题,一旦数据量大,就会力不从心,数据库就能够很好地解决这个问题。而且大多数的企业,都会以SQL的形式来存储数据,如果你是一个分析师,也需要懂得SQL的操作,能够查询、提取数据。

SQL作为最经典的数据库工具,为海量数据的存储与管理提供可能,并且使数据的提取的效率大大提升。你需要掌握以下技能:

提取特定情况下的数据:企业数据库里的数据一定是大而繁复的,你需要提取你需要的那一部分。比如你可以根据你的需要提取2018年所有的销售数据、提取今年销量最大的50件商品的数据、提取上海、广东地区用户的消费数据……,SQL可以通过简单的命令帮你完成这些工作。

数据库的增、删、查、改:这些是数据库最基本的操作,但只要用简单的命令就能够实现,所以你只需要记住命令就好。

数据的分组聚合、如何建立多个表之间的联系:这个部分是SQL的进阶操作,多个表之间的关联,在你处理多维度、多个数据集的时候非常有用,这也让你可以去处理更复杂的数据。

数据预处理:Python(pandas)

很多时候我们拿到的数据是不干净的,数据的重复、缺失、异常值等等,这时候就需要进行数据的清洗,把这些影响分析的数据处理好,才能获得更加精确地分析结果。

比如空气质量的数据,其中有很多天的数据由于设备的原因是没有监测到的,有一些数据是记录重复的,还有一些数据是设备故障时监测无效的。比如用户行为数据,有很多无效的操作对分析没有意义,就需要进行删除。

那么我们需要用相应的方法去处理,比如残缺数据,我们是直接去掉这条数据,还是用临近的值去补全,这些都是需要考虑的问题。

对于数据预处理,学会 pandas 的用法,应对一般的数据清洗就完全没问题了。需要掌握的知识点如下:

选择:数据访问(标签、特定值、布尔索引等)

缺失值处理:对缺失数据行进行删除或填充

重复值处理:重复值的判断与删除

空格和异常值处理:清楚不必要的空格和极端、异常数据

相关操作:描述性统计、Apply、直方图等

合并:符合各种逻辑关系的合并操作

分组:数据划分、分别执行函数、数据重组

Reshaping:快速生成数据透视表

概率论及统计学知识

数据整体分布是怎样的?什么是总体和样本?中位数、众数、均值、方差等基本的统计量如何应用?如果有时间维度的话随着时间的变化是怎样的?如何在不同的场景中做假设检验?数据分析方法大多源于统计学的概念,所以统计学的知识也是必不可少的。需要掌握的知识点如下:

基本统计量:均值、中位数、众数、百分位数、极值等

其他描述性统计量:偏度、方差、标准差、显著性等

其他统计知识:总体和样本、参数和统计量、ErrorBar

概率分布与假设检验:各种分布、假设检验流程

其他概率论知识:条件概率、贝叶斯等

有了统计学的基本知识,你就可以用这些统计量做基本的分析了。通过可视化的方式来描述数据的指标,其实可以得出很多结论了,比如排名前100的是哪些,平均水平是怎样的,近几年的变化趋势如何……

你可以使用python的包 Seaborn(python包)在做这些可视化的分析,你会轻松地画出各种可视化图形,并得出具有指导意义的结果。了解假设检验之后,可以对样本指标与假设的总体指标之间是否存在差别作出判断,已验证结果是否在可接受的范围。

python数据分析

如果你有一些了解的话,就知道目前市面上其实有很多 Python 数据分析的书籍,但每一本都很厚,学习阻力非常大。但其实真正最有用的那部分信息,只是这些书里很少的一部分。比如用 Python 实现不同案例的假设检验,其实你就可以对数据进行很好的验证。

比如掌握回归分析的方法,通过线性回归和逻辑回归,其实你就可以对大多数的数据进行回归分析,并得出相对精确地结论。比如DataCastle的训练竞赛“房价预测”和“职位预测”,都可以通过回归分析实现。这部分需要掌握的知识点如下:

回归分析:线性回归、逻辑回归

基本的分类算法:决策树、随机森林……

基本的聚类算法:k-means……

特征工程基础:如何用特征选择优化模型

调参方法:如何调节参数优化模型

Python 数据分析包:scipy、numpy、scikit-learn等

在数据分析的这个阶段,重点了解回归分析的方法,大多数的问题可以得以解决,利用描述性的统计分析和回归分析,你完全可以得到一个不错的分析结论。

当然,随着你实践量的增多,可能会遇到一些复杂的问题,你就可能需要去了解一些更高级的算法:分类、聚类,然后你会知道面对不同类型的问题的时候更适合用哪种算法模型,对于模型的优化,你需要去学习如何通过特征提取、参数调节来提升预测的精度。这就有点数据挖掘和机器学习的味道了,其实一个好的数据分析师,应该算是一个初级的数据挖掘工程师了。

系统实战

这个时候,你就已经具备了数据分析的基本能力了。但是还要根据不同的案例、不同的业务场景进行实战。能够独立完成分析任务,那么你就已经打败市面上大部分的数据分析师了。

如何进行实战呢?

上面提到的公开数据集,可以找一些自己感兴趣的方向的数据,尝试从不同的角度来分析,看看能够得到哪些有价值的结论。

另一个角度是,你可以从生活、工作中去发现一些可用于分析的问题,比如上面说到的电商、招聘、社交等平台等方向都有着很多可以挖掘的问题。

开始的时候,你可能考虑的问题不是很周全,但随着你经验的积累,慢慢就会找到分析的方向,有哪些一般分析的维度,比如top榜单、平均水平、区域分布、年龄分布、相关性分析、未来趋势预测等等。随着经验的增加,你会有一些自己对于数据的感觉,这就是我们通常说的数据思维了。

你也可以看看行业的分析报告,看看优秀的分析师看待问题的角度和分析问题的维度,其实这并不是一件困难的事情。

在掌握了初级的分析方法之后,也可以尝试做一些数据分析的竞赛,比如 DataCastle 为数据分析师专门定制的三个竞赛,提交答案即可获取评分和排名:

员工离职预测训练赛

美国King County房价预测训练赛

北京PM2.5浓度分析训练赛

种一棵树最好的时间是十年前,其次是现在。现在就去,找一个数据集开始吧!!

  我小时候的理想是将来做一名数学家,可惜长大了发现自己天赋不够,理想渐行渐远,于是开始考虑现实,开始做一些人生规划,我一直在思考将来从事何种职业,专注什么样的领域,重新定义着自己的职业理想。我现在的职业理想,比较简单,就是做一名数据分析师。
  作者:来源:网络大数据|2015-05-29 10:24
  收藏
  分享

  我小时候的理想是将来做一名数学家,可惜长大了发现自己天赋不够,理想渐行渐远,于是开始考虑现实,开始做一些人生规划,我一直在思考将来从事何种职业,专注什么样的领域,重新定义着自己的职业理想。我现在的职业理想,比较简单,就是做一名数据分析师。

  为什么要做数据分析师:
  在通信、互联网、金融等这些行业每天产生巨大的数据量(长期更是积累了大量丰富的数据,比如客户交易数据等等),据说到2020年,全球每年产生的数据量达到3500万亿GB;海量的历史数据是否有价值,是否可以利用为领导决策提供参考依据?随着软件工具、数据库技术、各种硬件设备的飞快发展,使得我们分析海量数据成为可能。
  而数据分析也越来越受到领导层的重视,借助报表告诉用户什么已经发生了,借助OLAP和可视化工具等分析工具告诉用户为什么发生了,通过dashboard监控告诉用户现在在发生什么,通过预报告诉用户什么可能会发生。数据分析会从海量数据中提取、挖掘对业务发展有价值的、潜在的知识,找出趋势,为决策层的提供有力依据,为产品或服务发展方向起到积极作用,有力推动企业内部的科学化、信息化管理。
  我们举两个通过数据分析获得成功的例子:
  (1) Facebook广告与微博、SNS等网络社区的用户相联系,通过先进的数据挖掘与分析技术,为广告商提供更为精准定位的服务,该精准广告模式收到广大广告商的热捧,根据市场调研机构eMarketer的数据,Facebook年营收额超过20亿美元,成为美国最大的在线显示广告提供商。
  (2) Hitwise发布会上,亚太区负责人John举例说明: 亚马逊30%的销售是来自其系统自动的产品推荐,通过客户分类,测试统计,行为建模,投放优化四步,运营客户的行为数据带来竞争优势。
  此外,还有好多好多,数据分析,在营销、金融、互联网等方面应用是非常广泛的:比如在营销领域,有数据库营销,精准营销,RFM分析,客户分群,销量预测等等;在金融上预测股价及其波动,套利模型等等;在互联网电子商务上面,百度的精准广告,淘宝的数据魔方等等。类似成功的案例会越来越多,以至于数据分析师也越来越受到重视。
  然而,现实却是另一种情况。我们来看一个来自微博上的信息:在美国目前面临14万~19万具有数据分析和管理能力的专业人员,以及150万具有理解和决策能力(基于对海量数据的研究)的管理人员和分析人员的人才短缺。而在中国,受过专业训练并有经验的数据分析人才,未来三年,分析能力人才供需缺口将逐渐放大,高级分析人才难寻。
  也就是说,数据分析的需求在不断增长,然而合格的为企业做分析决策的数据分析师却寥寥无几。好多人想做数据分析却不知道如何入手,要么不懂得如何清洗数据,直接把数据拿来就用;要么乱套模型,分析的头头是道,其实完全不是那么回事。按俗话说就是:见过猪跑,没吃过猪肉。
  我的职业规划:
  对于数据分析,有一句话说的非常好:spss/sql之类的软件、决策树、时间序列之类的方法,这些仅仅就都是个工具而已,最重要的是对业务的把握。没有正确的业务理解,再牛的理论,再牛的工具,都是白搭。
  做一名合格的数据分析师,除了对数据需要有良好的敏感性之外,对相关业务的背景的深入了解,对客户或业务部门的需求的清晰认识。根据实际的业务发展情况识别哪些数据可用,哪些不适用,而不是孤立地在“真空环境”下进行分析。
  为此,我对自己的规划如下:
  第一步:掌握基本的数据分析知识(比如统计,概率,数据挖掘基础理论,运筹学等),掌握基本的数据分析软件(比如,VBA,Matlab,Spss,Sql等等),掌握基本的商业经济常识(比如宏微观经济学,营销理论,投资基础知识,战略与风险管理等等)。这些基础知识,在学校里尽量的学习,而且我来到了和君商学院,这样我可以在商业分析、经济分析上面领悟到一些东西,增强我的数据分析能力。
  第二步:参与各种实习。研一开始我当时虽然有课,不过很幸运的找到一份一周只需去一两天的兼职,内容是为三星做竞争对手分析,当然分析框架是leader给定了,我只是做整合资料和往ppt里填充的内容的工作,不过通过兼职,我接触到了咨询行业,也向正式员工学习了很多商业分析、思考逻辑之类的东西。
  之后去西门子,做和VBA的事情,虽然做的事情与数据分析无关,不过在公司经常用VBA做一些自动化处理工作,为自己的数据分析工具打好了基础。再之后去了易车,在那里兼职了一个多月,参与了大众汽车销量数据短期预测的项目,一个小项目下来,数据分析的方法流程掌握了不少,也了解了企业是如何用一些时间序列模型去参与预测的,如何选取某个拟合曲线作为预测值。
  现在,我来到新的地方实习,也非常幸运的参加了一个央企的码头堆场优化系统设计,其实也算数据分析的一种吧,通过码头的数据实施调度,通过码头的数据进行决策,最后写成一个可操作的自动化系统。而这个项目,最重要的就是业务流程的把握,我也参与项目最初的需求调研,和制定工作任务说明书SOW,体会颇多。
  第三步:第一份工作,预计3-5年。我估计会选择咨询公司或者IT公司吧,主要是做数据分析这块比较强的公司,比如Fico,埃森哲,高沃,瑞尼尔,IBM,AC等等。通过第一份工作去把自己的知识打得扎实些,学会在实际中应用所学,学会数据分析的流程方*,让自己成长起来。
  第四步:去自己喜欢的一个行业,深入了解这个行业,并讲数据分析应用到这个行业里。比如我可以去电子商务做数据分析师。我觉得我选择电子商务,是因为未来必将是互联网的时代,电子商务必将取代传统商务,最显著的现象就是传统零售商老大沃尔玛正在受到亚马逊的挑战。此外,电子商务比传统的零售商具有更好的数据收集和管理能力,可以更好的跟踪用户、挖掘潜在用户、挖掘潜在商品。
  第五步:未知。我暂时没有想法,不过我希望我是在一直的进步。
  有一位数据分析牛人曾经总结过数据分析师的能力和目标:
  能力:一定要懂点战略、才能结合商业;一定要漂亮的presentation、才能buying;一定要有global view、才能打单;一定要懂业务、才能结合市场;一定要专几种工具、才能干活;一定要学好、才能有效率;一定要有强悍理论基础、才能入门;一定要努力、才能赚钱;最重要的:一定要务实、才有reputation;不懂的话以后慢慢就明白了。