前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >成为数据分析师的必要条件

成为数据分析师的必要条件

作者头像
HsuHeinrich
发布2023-02-24 20:00:07
4870
发布2023-02-24 20:00:07
举报
文章被收录于专栏:HsuHeinrichHsuHeinrich

开篇 成为数据分析师的必要条件

作为一名成熟的数据分析师,那必然是要头顶Python,脚踩SQL,左手一个Tableau,右手一个Excel。能取数,会报表,埋点AB两不误,分析落地显价值。

那在日常工作中具体需要具备哪些技能呢?笔者根据个人工作学习,对自己做了个技能画像。

接下来,笔者将从工具应用理论基础数字基建分析思维四个方面介绍数据分析的必要条件。对其中一些基本技能附上基础教程,帮助初学者迈进数据分析的大门。同时为了尽可能减少初学者走弯路,会在必要的地方做一些补充说明。

工具应用

我们不生产数据,但我们要灵活搬运数据。作为一名数据搬运工,一些趁手的工具那是必不可少的。

  • SQL 毫不夸张的说,一个数据分析师80%的时间都在写SQL。对于想入门的同学来说,SQL基础教程[1] 是实用的。但实际工作的业务是千变万化的,Hive SQL在处理复杂的数据需求更有优势。但逻辑是相通的,这里只做概述,暂且不表。

SQL是一个非严格的格式化要求语言,因此市面上的数据分析师的SQL格式千变万化,对于初学者无形中提高了Review代码的难度。一个优秀的数据分析师应该养成自己良好的代码风格,如果没有,可以参考后续系列的示例。

对于数据分析师来说,一个好的文本编辑器也是必要的。推荐的包括Atom、VScode、Sublime。笔者更偏爱Sublime,具备轻量、本地文件管理、多语言支持、批处理操作等优点,爱折腾也能各种自定义。一些常用的Sublime操作[2] 与笔者相似,推荐给大家。

  • Python 一方面Python是对SQL的补充,直白点说就是有的需求SQL写不出来,例如非结构化的文本数据、循环判断等。这个时候就需要通过Python进行数据处理,如果一些数据无法离线下载,就需要用到PySpark进行线上处理。另一方面,Python在数据挖掘、机器学习、自动化工作等方面应用广泛。

当然R在数据处理与数据挖掘同样表现优异,不过由于笔者不会R,就不做介绍了。

PySpark可以通过Python直接读取Hive集群,前提是需要数仓搭建完善的JupyterLab平台。后续会有相关案例,这里也就暂且不表了。

对于想入门的同学,廖雪峰的python教程[3] 是很好的入门教程,学到【模块】基本足矣。而Numpy、Pandas、Matplotlib作为Python数据分析三大宝剑,利用Python进行数据分析[4] 可谓是数分从业者入门书籍。但在实际工作中,Numpy常用于科学计算,可视化分析也较多以Tableau或Excel为主。因此Pandas的重要性就凸显出来了,其基础教程可参考pandas教程[5] ,强化训练可参考图解Pandas[6]

对于数据分析师来说,Anaconda + jupyter notebook 是绝佳的食用方式。因此对于初学者而言,没必要将大量的精力花费在折腾环境、编辑器上面。具体的只需要搜索【Anaconda安装教程】即可。

  • Tableau 一图胜千言,Tableau作为一款优秀的可视化分析软件/平台,具备易上手,上限高等优点,更重要的是能够处理亿万量级的数据。简单的可以制作任意的基本图表,复杂的可以制作精美的BI报表。Tableau官方入门指南[7] 是很好的入门级教程。

Tableau是一款付费软件,市面上的破解版过于老旧,因此建议大家支持正版。但正版的价格又很昂贵,所以想省钱的可以逛逛某宝,懂得都懂。当然Power BI也很优秀,由于笔者也不会,就不做介绍了。

Tableau不建议过多地学习复杂高深的内容,更建议在日常分析中多使用。拖拖拽拽,发现问题,解决问题。自然就熟能生巧。对于SQL、Python亦是如此,数据分析是一个实践大于理论的职业,因此只需要有一定的基础便可以花更多的精力在业务实践上,以问题为导向进行自我提升。

  • Excel Excel作为最基本的数据分析工具却往往被大家忽略,优秀的Excel具有方便美观、对非技术型领导友好等优点。但是制作优秀的Excel往往需要较高的学习成本和时间成本,因此大多数数据分析师只需要学会Vlookup和数据透视即可。
  • Git 对于所有需要协同工作的场景,Git都是必不可少的。数据分析作为非专业开发人员,少许的Git基础即可流畅地协同工作。廖雪峰的Git教程[8] 是浅显易懂的。
  • Linux 有些情况例如配置各种环境、登陆集群服务器等,就会使用到命令行工具,因此基础的Linux命令[9]是必要的。事实上在需要的时候去查找使用更为合理。
  • Markdown 这个是不必要的,但由于Markdown能让人们更多地关注内容本身而非排版,因此在日常维护wiki,内容分享等方面都极为高效,所以强烈建议工作之余学习。官方基本语法[10]是很好的学习资源,如果有想进行写作分享的,还可以在线排版非常方便,但是更建议本地通过Typora写作后再进行线上排版。

Typora目前正式版开始收费,不想付费的可以下载Beta版本[11],功能基本满足需求。 Markdown写作还有一个重要的问题是解决图床问题,好在Typora+PicGo+Gitee[12]就能轻松实现。

理论基础

万丈高楼平地起,基础往往能决定上限。

  • 统计学 统计学是数据分析的灵魂,虽然很多人在工作中感觉不到。但实际上日常所做的汇总统计、分布、探索性分析、相关、回归、假设检验、抽样、总体推断等等都是由统计理论所支撑的。建议学习《商务与经济统计 精要版 原书第7版》。
  • 计量经济学 计量与统计是相似的,如果说统计更偏重于理论的话,计量则更偏重于应用,往往可以将实际问题抽象为计量模型进行实证研究。但是花费大量的时间去学习计量经济学是不明智的,但是多多了解也是有益的。推荐阅读陈强老师的《高级计量经济学及Stata应用》,里面有详实的计量模型案例。
  • 算法基础/机器学习/数据挖掘 从数据分析师的角度看,这三者其实差异不大。数据分析师与算法工程师的最大差异在于,数分更偏重于成为调包侠,当然,你算法基础越扎实,调包调参就会越丝滑。而机器学习更注重结果是否work,而很少对数据形式进行统计验证。这里推荐两本书给大家,《Python大数据分析与机器学习商业案例实战》帮你快速成为调包侠,《Python数据分析与数据化运营 第2版》通过详实的案例指导你如何利用算法进行业务驱动。

统计学能极大的提高分析师的下限,计量经济学则能提高分析师的模型抽象能力,机器学习则能提高分析师解决实际问题的能力。因此,当你感觉自己出现瓶颈的时候,不妨在这三方面进一步深入学习。

数字基建

同样的,数字基建就是数据驱动的基础。

  • 数据支持 直白一点就是临时的数据需求,分析师的终极目标之一就是消灭临时数据需求,然而事实是残酷的,大部分公司的数据支持占用了分析师50%以上的时间。所以强大的业务理解,沟通合作以及SQL能力是必须的。笔者根据本人的工作经验和爬坑经历,给出最真诚的6点建议:
  1. 区分维度和度量。当你明确了维度和度量以后,你脑中自然就形成了最终数据表格的框架。
  2. 问清楚时间。很多数据需求验收不过关都出在时间问题上,例如数据要工作量还是转化漏斗,按自然日统计还是按状态变更时间统计等。
  3. 关注重复数据。有些记录不应该出现重复情况,需要给定规则进行去重。
  4. 明确是结果表还是日志表。结果表往往没有状态变更的时间,只有最终一个结果,日志表则是生成结果表所有过程的记录。
  5. 快速的数据验证往往建立在明细的基础上。在做数据校验时,通常由外及里,拉出明细进行比对。
  6. 制作SQL模版或定时邮件。一些相似的、频繁的、周期性的数据需求可以抽离出来进行固化,绝大多数完善的数仓都会开发出相应的平台供分析师使用。

数据分析师在做临时数据需求也是有段位的,在和需求方沟通时的表现就能看出来: 青铜:两眼迷茫,似懂非懂的,然后就进入了漫长的无意义沟通环节。 白银:当时理解了,回来一着手就感觉不对,然后时间就浪费在了反复沟通确认上。 黄金:顺利的跑出了数据,交给需求后要么是数据不对,要么就是并非业务想要的,接下来就是反复地修改。 钻石:get到业务的真实诉求,引导业务正确的提出需求,沟通结束大致结果就已经出现在自己脑子里了。回去排个期,摸个鱼,在deadline之前发出去,业务见了都夸好。 王者:你这个需求不合理/没有意义。霸气拒之~

  • 数据埋点

数据分析师应该和产研一起参与到埋点工作中去,如若不然,你在排查埋点数据异常的时候能把自己气到吐血。分析师最常见的埋点工作就是进行埋点设计和埋点测试。

埋点一般根据产品经理的产品搞进行设计,不同公司的埋点设计标准千差万别,但最为常见的就是三段式【事件类型/页面/事件】和四段式【事件类型/页面/模块/事件】。埋点命名采用驼峰命名,并记录主要的参数。

埋点测试主要根据设备进行区分,安卓设备通过ADB测试,iOS设备可用mac的控制台,H5页面则通过Charles进行抓包。

  • 指标体系

指标体系可以通过一系列有联系的特征来洞察全局,推动运营。指标使得业务可拆解量化,体系则是观察维度,简单的说就是维度+度量。指标体系的搭建是有迹可寻的,一般会用到OSM+AARRR+UJM+MECE四大模型。

OSM模型确定整体框架,O(Object)一般是业务核心KPI。明确目标后,需要制定相应的S(Strategy),这个可以利用AARRR模型拆解业务漏斗,UJM模型模拟用户路径对S进行拆解。而M(Measure)则是对策略效果的评估指标,可以通过MECE模型对M进行拆解穷尽。

  • BI报表

BI报表是指标体系的具体呈现,一般会将核心指标、一级指标做成经营报表,常以大盘形式展现给管理层。拆解后的S和M做成运营报表,用来指导业务运营。

每个公司的报表体系也是千差万别的,但是其核心还是SQL,并辅以调度系统将数据写入数据库。为了保证前端查询的时效性,常见的有MySQL和ES(Elasticsearch),对于实时大数据则考虑TiDB、Flink,对于动态多维数据则考虑Kylin。当然这些底层设计都是需要数仓开发完善的,分析师只需要入乡随俗即可。

  • 自动化工作

自动化工作是一种统称,例如前面所说的SQL模版、定时邮件、BI报表,但是这些数仓在开发相关平台的时候,往往只是将SQL查询的数据以某种形式呈现,可扩展性不高。一些特异的自动化需求就需要自力更生了,一般需要综合调度系统、crontab、Python、PySpark完成数据的读写,Excel和Tableau则可以实时连接MySQL,Python可以将数据推送至邮件、企业微信、钉钉等。

自动化工作的核心在于读取Hive集群数据并写入MySQL,有的公司有相应的调度系统可用,如果没有则可以利用crontab+Python+PySpark实现。当然具体实施细节会涉及到很多权限问题需要协调解决,其实这一部分也是非必要的。

分析思维

一般的分析思维包括对比、分群、相关、因果,但笔者更倾向于分为异动分析、分群思维、数据挖掘、试验驱动。

  • 异动分析 异动分析是一个综合性分析,但核心思想是对比分析。在软技能层面涵括了业务理解、结构化思维、逻辑推断能力,硬技能方面又体现了数据校验、统计基础、指标拆解、维度下钻、比较分析、漏斗分析、事件分析等综合技能。

其实这些思维能力基本上在开发指标体系与BI报表的时候就已经体现出来了,异动分析强依赖于BI报表,所以优秀的报表能极大的缩短分析师定位异常的时间。

当然有些异动藏的比较深,这个时候就需要有一步步抽丝剥茧,其关键就是维度下钻+指标拆解,核心思想则是对比分析。

  • 分群思维 物以类聚,人以群分。分群是精细化运营的核心,也是对比分析的前提。最常见的分群就是维度下钻,这个是基于业务角度的分群方式。还有很多基于数据角度的分群方法,例如一维的帕累托法则,二维的波士顿矩阵,三维的RFM模型,多维的聚类等。同期群分析是一种特殊的分群方式,它在分群的同时又彰显了时间信息。
  • 数据挖掘 利用算法模型挖掘影响标的变量的关键因素,其实质是相关性分析。这是一类广泛的问题,主要包括分类和预测,在一些专题分析中应用广泛。
  • 试验驱动 试验思维是一种低成本的因果分析思维,通过一系列科学步骤将小流量的实验结论推至总体。最常见的就是A/B试验,是创新驱动的一大利器。

因果推断除了A/B试验外,还有传统的计量方法,例如合成控制法、断点回归、倾向得分匹配、双重差分法。以及开源的因果推断框架,例如dowhy、Causal Impact等。

实际上,由于A/B试验的推广和完善,基于试验外的因果推断很少有应用,所以重点还是要掌握A//B试验。

总结

以上能大致绘制出一个数据分析师的轮廓,总结起来就是擅长SQL、Python、可视化分析,并具备统计基础和分析思维。通过实践沉淀出数据敏感性和业务敏感性。

共勉~

参考资料

[1]

SQL基础教程: https://www.runoob.com/sql/sql-tutorial.html

[2]

Sublime操作: https://code.kpman.cc/2014/10/14/sublime-text-3-mac-%E6%8C%87%E5%8D%97/

[3]

廖雪峰的python教程: https://www.liaoxuefeng.com/wiki/1016959663602400

[4]

利用Python进行数据分析: https://www.jianshu.com/p/04d180d90a3f

[5]

pandas教程: https://www.gairuo.com/p/pandas-tutorial

[6]

图解Pandas: https://pandas.liuzaoqi.com/intro.html

[7]

Tableau官方入门指南: https://help.tableau.com/current/pro/desktop/zh-cn/gettingstarted_overview.htm

[8]

廖雪峰的Git教程: https://www.liaoxuefeng.com/wiki/896043488029600

[9]

基础的Linux命令: https://linuxtools-rst.readthedocs.io/zh_CN/latest/base/index.html

[10]

官方基本语法: https://markdown.com.cn/basic-syntax/

[11]

Beta版本: https://typoraio.cn/releases/all

[12]

Typora+PicGo+Gitee: https://www.jianshu.com/p/b69950a49ae2

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-12-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 HsuHeinrich 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 开篇 成为数据分析师的必要条件
    • 工具应用
      • 理论基础
        • 数字基建
          • 分析思维
            • 总结
              • 参考资料
          相关产品与服务
          云数据库 SQL Server
          腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档