拾穗数据

Back

数据分析师 L2:实战进阶#

[!quote] 写在前面 如果你已经工作了一段时间,能熟练地取数、做报表,却开始有一种说不清的焦虑——“我是不是只是个取数机器?""为什么我的分析报告老板看完没什么反应?""同事都在聊什么模型、什么增长,我怎么一个都不懂?“——那么,你来对地方了。

L2 阶段是很多数据分析师的分水岭。有人在这个阶段完成蜕变,从”取数工具人”变成”业务伙伴”;也有人在这个阶段原地踏步,三年后的能力和一年前差不多。区别在哪里?不在于学了多少新技术,而在于有没有建立起分析问题的框架


这个阶段的你,可能是这样的#

画像一:取数熟练,但感觉自己只是”工具人”#

你工作已经一年左右了,SQL 写得挺溜,业务方提什么需求你都能快速响应。但你发现一个问题:你每天都在取数,却不知道这些数据最后用来干嘛了。业务方拿走数据,做了什么决策,跟你没什么关系。你开始怀疑:我是不是只是一个”人肉数据库”?

给你的建议:你缺的不是技术,是”主动性”和”业务理解”。从现在开始,每次给业务方取数的时候,多问一句:“您拿这个数据是想解决什么问题?“然后试着自己也想想:如果我是业务方,我会怎么用这些数据?这个习惯会让你慢慢从”被动响应”转变为”主动分析”。

画像二:老板让你”给点建议”,你却不知道怎么给#

你的分析报告里,数据都是对的,图表也很清晰,但每次汇报完,老板都会问:“所以呢?你觉得我们应该怎么做?“你心里想的是:“我是分析师啊,分析完不就行了吗,怎么还让我给建议?”

给你的建议:这正是 L2 和 L1 的本质区别。L1 阶段,你的任务是”描述发生了什么”;L2 阶段,你需要能”解释为什么发生”,并基于分析给出建议。数据分析师的价值,不在于产出多少张报表,而在于能不能帮业务方做出更好的决策。给建议不是越权,而是你的本职工作。

画像三:想跳槽,但觉得自己没什么拿得出手的项目#

你在公司干了一两年,每天都很忙,但仔细想想好像也没做什么有影响力的事情。想跳槽,简历上写不出什么亮点;面试的时候,问你做过什么项目,你只能说”日常数据分析”,具体问深了又答不上来。

给你的建议:问题不在于你没做项目,而在于你没有”包装”项目的意识。你做过的那些分析,有没有哪个帮业务方做出了决策?有没有哪个带来了可量化的收益?从现在开始,有意识地记录你的每一个分析项目:背景是什么、用了什么方法、得出什么结论、最后业务方采纳了吗、效果怎么样。这些就是你跳槽时的”弹药”。

画像四:觉得自己该学点高级的东西,但不知道学什么#

你听说数据分析师要学机器学习,要学 Python,要学统计学……但你不知道该从哪个开始学,也不知道学了能干嘛。更焦虑的是,你发现身边的同事好像什么都会,而你好像什么都不会。

给你的建议:先别急着追热点。L2 阶段最重要的不是学新技术,而是把分析框架建立起来。什么是 AARRR?什么是 RFM?什么是漏斗分析?这些”老掉牙”的东西,你真的会用吗?很多人追着学机器学习,结果发现工作中根本用不上;而那些看起来很基础的分析方法,才是日常工作中最常用的。


L2 阶段的核心目标#

用一句话概括 L2 阶段的目标:

能够独立完成”为什么发生”这个层面的分析,并基于分析给出可行的建议。

具体来说:

  • 业务方问”上周销售额为什么下降了”,你不只是说”下降了 10%“,而是能拆解出是哪个渠道、哪个品类、哪类用户导致的下降
  • 老板说”分析一下用户流失”,你不只是算出流失率,而是能识别出哪些特征的用户更容易流失,以及可能的原因
  • 产品问”这个功能效果怎么样”,你不只是对比上线前后的数据,而是能考虑到其他变量的影响,给出更严谨的结论

L2 阶段的关键词是”诊断”和”解释”。你要从”数据搬运工”变成”数据医生”——不只是描述症状,还要能诊断病因。


必须掌握的核心技能#

1. 业务分析框架 —— 比任何技术都重要#

很多人以为数据分析师的核心竞争力是技术,其实不是。能把业务问题翻译成数据问题,再把数据结论翻译回业务建议,这才是核心竞争力。

而这种能力的基础,是掌握一些经过验证的分析框架。

AARRR 模型(海盗模型)#

这是做用户增长分析的基础框架:

  • Acquisition(获取):用户从哪里来?
  • Activation(激活):用户来了之后做了什么?
  • Retention(留存):用户会不会回来?
  • Revenue(变现):用户花了多少钱?
  • Referral(传播):用户会不会推荐给别人?

听起来很简单对吧?但我见过太多分析师,拿到一个”分析一下用户情况”的需求,就开始漫无目的地看数据。如果你脑子里有 AARRR 这个框架,你会知道应该分别从这五个维度去看,最后给出一个完整的用户画像。

推荐学习AARRR模型详解

RFM 模型#

这是做用户分层的经典框架:

  • Recency(最近一次消费):用户最近一次购买是什么时候?
  • Frequency(消费频率):用户购买的次数多不多?
  • Monetary(消费金额):用户花了多少钱?

根据这三个维度,可以把用户分成不同的群体:高价值用户、流失风险用户、潜力用户等。不同的用户群体,应该采取不同的运营策略。

推荐学习RFM用户分析

漏斗分析#

这是分析转化率的基本方法。比如电商的购买漏斗:浏览商品 → 加入购物车 → 提交订单 → 支付成功。每一步都会流失一部分用户,通过漏斗分析,你可以找到流失最严重的环节,针对性地优化。

推荐学习漏斗分析

同期群分析(Cohort Analysis)#

这是分析用户留存的重要方法。简单说,就是把用户按照某个时间点(比如注册时间)分成不同的群体,然后分别追踪每个群体的后续行为。

为什么要这么做?因为直接看整体留存率会被”新用户稀释”。比如你的产品在大量投放广告,新用户涌入,整体留存率可能看起来很好,但其实老用户的留存可能在下降——这个问题只有通过同期群分析才能发现。

推荐学习同期群分析

[!warning] 框架不是万能的 这些框架是思考的起点,不是答案本身。不要生搬硬套,要根据具体业务场景灵活运用。更不要把框架当成”炫技”的工具——老板不关心你用了什么模型,只关心你的分析有没有用。

2. SQL 进阶 —— 窗口函数是分水岭#

如果说 L1 阶段的 SQL 是”能用”,那 L2 阶段的 SQL 就是”好用”。最明显的标志是:你会不会用窗口函数

为什么窗口函数这么重要?#

因为很多业务分析需求,用普通的 SQL 写起来非常麻烦,但用窗口函数可以很优雅地解决。

举几个例子:

  • 排名:每个品类销量 TOP 10 的商品是什么?
  • 同比/环比:每个用户本月消费相比上月变化多少?
  • 累计求和:截止到每一天,累计销售额是多少?
  • 前后对比:每个用户两次购买之间间隔多久?

这些需求,你用 GROUP BY 和子查询也能实现,但代码会很长、很难维护。用窗口函数,几行就搞定了。

核心语法

-- 窗口函数的基本结构
SELECT
    user_id,
    order_date,
    amount,
    ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY order_date) as order_seq,  -- 每个用户的订单序号
    SUM(amount) OVER (PARTITION BY user_id ORDER BY order_date) as cumulative_amount,  -- 累计消费
    LAG(order_date) OVER (PARTITION BY user_id ORDER BY order_date) as prev_order_date  -- 上一次订单日期
FROM orders
sql

推荐学习窗口函数详解

SQL 性能优化#

当你开始分析更大的数据集时,你会发现有些查询跑得特别慢。这时候就需要了解一些基本的优化技巧:

  • 避免 SELECT *,只查询需要的字段
  • 尽早过滤数据(WHERE 条件越前越好)
  • 理解索引的作用,利用好索引字段
  • 避免在 WHERE 条件中对字段进行函数运算

不需要成为 DBA,但要有基本的性能意识。

推荐学习SQL优化基础

3. 统计分析基础 —— 不是为了炫技,是为了不被骗#

L2 阶段需要掌握一些基本的统计知识,不是为了做学术研究,而是为了在日常工作中不犯低级错误。

相关性 ≠ 因果性#

这是最常见的错误。比如你发现”使用了某功能的用户留存率更高”,能说明这个功能提升了留存吗?不一定。可能是本来就活跃的用户更愿意使用这个功能。

推荐学习相关性分析

样本量和统计显著性#

你做了一个 A/B 测试,A 方案的转化率是 5%,B 方案是 5.2%。B 方案更好吗?要看样本量。如果只有 100 个用户,这个差异很可能是随机波动;如果有 10 万个用户,这个差异就有意义了。

推荐学习假设检验基础

基准的重要性#

“转化率提升了 50%“听起来很厉害,但如果是从 0.1% 提升到 0.15%,其实没什么用。看比例的时候,一定要问:基数是多少?

这些统计常识看起来简单,但实际工作中犯错的人太多了。

4. 数据可视化 —— 说服力的关键#

L2 阶段的可视化要求比 L1 更高。不只是”把数据画成图”,而是要”用图表讲故事”。

选择正确的图表类型#

  • 比较:用柱状图
  • 趋势:用折线图
  • 占比:用饼图(但尽量少用,因为人眼对角度不敏感)
  • 分布:用直方图或箱线图
  • 关系:用散点图

不要为了炫技用复杂的图表。一个清晰的柱状图,比一个花哨的雷达图有说服力多了。

图表的”先后顺序”#

在做分析报告时,图表的排列顺序很重要:

  1. 先给结论(这张图说明什么)
  2. 再看趋势(整体是什么样的)
  3. 最后看细节(有哪些值得注意的点)

推荐学习数据可视化最佳实践

5. Python 数据处理 —— 效率的质变#

如果你还没开始用 Python,L2 阶段是时候认真学一下了。不是要成为程序员,而是要用它来提升效率。

Pandas 进阶操作#

L1 阶段你可能只会用 Pandas 读取数据、做简单筛选。L2 阶段,你需要会:

  • 数据清洗:处理缺失值、异常值、重复值
  • 数据合并:merge、concat、join
  • 分组聚合:groupby 的各种用法
  • 数据转换:pivot、melt、apply

推荐学习Pandas数据清洗

自动化报表#

如果你每天都要做一份格式相同的日报,为什么不写个脚本自动生成呢?Python 可以:

  • 自动从数据库取数
  • 自动计算各种指标
  • 自动生成 Excel 或 HTML 报表
  • 自动发送邮件

第一次写脚本可能要花几个小时,但之后每天只需要运行一下就好了。把节省下来的时间,用来做更有价值的分析。

6. AI 工具应用 —— 让分析工作事半功倍#

如果说 L1 阶段的 AI 是”学习助手”,那 L2 阶段的 AI 就是”工作效率放大器”。

2024 年之后,ChatGPT、Claude、GitHub Copilot 这些工具已经成为很多资深分析师的标配。不是因为赶时髦,而是它们真的能让你的工作效率翻倍。

AI 能帮你做什么?#

1. 复杂 SQL 编写和优化

当你需要写一个复杂的窗口函数,或者一个多表关联的查询时:

我需要计算每个用户的RFM分值:
- R:最后一次购买距今的天数,按分位数分成1-5分
- F:过去一年的购买次数,按分位数分成1-5分
- M:过去一年的总消费金额,按分位数分成1-5分

表结构是 orders(user_id, order_date, amount),请帮我写SQL
plaintext

AI 会给你一个完整的 SQL,包括窗口函数、CASE WHEN 分箱逻辑,甚至可能还会提醒你处理边界情况。

2. 数据解读和假设生成

当你面对一组数据不知道怎么解释时:

我们App的7日留存率从上月的32%下降到本月的28%,但新用户数量增长了50%。同期,竞品发布了一个重大更新。请帮我分析可能的原因,并给出验证假设的方法。
plaintext

AI 不会给你正确答案(它不知道你的业务),但它能帮你快速生成一个假设清单,比你自己想更全面。

3. 分析报告撰写

把你的数据发现丢给 AI,让它帮你组织成结构化的报告:

以下是我的分析发现(数据略),请帮我写一份给运营总监的分析报告,要求:
1. 先说结论和建议
2. 再展示支撑数据
3. 最后说明风险和局限
plaintext

AI 写出来的报告可能不完美,但至少给了你一个可以修改的初稿,比对着空白文档发呆强多了。

4. 代码 Debug 和优化

当你的 Python 脚本报错,或者跑得特别慢时:

这段Pandas代码运行很慢,数据量大概100万行,能帮我优化一下吗?
(贴上代码)
plaintext

AI 经常能指出你代码中的性能瓶颈,比如用 apply 可以改成向量化操作,循环可以改成 groupby 等。

AI 不能替代什么?#

但有些事情,AI 永远帮不了你:

  • 判断分析方向是否正确:AI 不知道老板真正关心什么
  • 理解数据背后的业务上下文:为什么这个数字异常?可能需要你去问业务方
  • 对结果负责:AI 给的 SQL 可能有 bug,发出去的报告是你的名字
  • 建立信任关系:业务方信任你,不是信任你用的工具

L2 阶段的 AI 使用策略#

场景推荐做法不推荐做法
写复杂SQL让AI生成初稿,自己review逻辑直接运行AI给的SQL发给业务方
解读数据用AI生成假设清单,自己验证把AI的解读当成结论
写报告让AI帮忙组织结构,自己填充洞察让AI从头写报告
学新技术让AI解释概念,给例子只看AI回答,不动手练习

[!tip] 一个实用建议 把 AI 当成一个”很会写代码但不懂你们业务的实习生”。你需要给它清晰的指令,检查它的输出,对结果负责。用好了,它能帮你节省大量时间;用不好,它会让你出丑。

推荐学习AI辅助数据分析实践


你可能会遇到的困难#

”分析做完了,业务方不采纳”#

这是 L2 阶段最常见的挫败感。你花了很多时间做了一份详细的分析,结论也很清晰,但业务方看完说”哦,知道了”,然后就没有然后了。

解决方案

  1. 分析前:先和业务方对齐,确认这个分析的目的是什么,最后要用来做什么决策
  2. 分析中:随时和业务方沟通进展,避免闭门造车
  3. 分析后:给出具体的、可执行的建议,而不是”建议优化”这种空话

还有一个很重要的点:选择正确的分析课题。有些分析,做完了也没法落地(因为资源限制、业务优先级等原因),这种分析一开始就不该做。学会判断什么值得分析,也是 L2 阶段的重要能力。

“数据对不上,各个系统的数据打架”#

你从系统 A 拉出来的销售额是 100 万,从系统 B 拉出来是 95 万,业务方自己的 Excel 表是 103 万。到底哪个对?

解决方案

  1. 理解每个数据源的口径定义(是实付还是应付?是 GMV 还是净收入?)
  2. 找到差异的原因(可能是时间范围不同、剔除条件不同等)
  3. 和业务方统一口径,形成共识

数据口径问题是数据分析师的日常,不要觉得烦,这正是你的价值所在——帮公司建立统一的数据标准。

“总觉得自己的分析不够深入”#

你做了一份分析,看着也挺完整的,但总觉得少了点什么。老板看完说”还能再深入一点吗”,你不知道该怎么深入。

解决方案:尝试”5 Why”方法。看到一个现象,问”为什么”?找到原因后,再问”为什么”?连续问 5 次,往往能挖掘到更深层的原因。

举个例子:

  • 销售额下降了 → 为什么?
  • 因为订单量下降了 → 为什么?
  • 因为新用户下单率下降了 → 为什么?
  • 因为首页的转化率下降了 → 为什么?
  • 因为首页改版后,购买入口不明显了 → 这就是根因

L2 阶段可以胜任的岗位#

完成 L2 阶段的学习后,你可以胜任:

中级数据分析师

  • 主要工作:独立负责一条业务线的数据分析,从需求理解到出具报告
  • 薪资参考:一线城市 15-25K,二线城市 10-18K
  • 面试重点:业务理解能力、分析框架、SQL 进阶、项目经验

产品分析师

  • 主要工作:负责产品的数据分析,支持产品迭代决策
  • 特点:需要对产品有深入理解,和产品经理配合紧密

商业分析师

  • 主要工作:分析市场、竞争、财务等商业数据,支持战略决策
  • 特点:对商业敏感度要求更高

增长分析师

  • 主要工作:专注于用户增长相关的分析,如获客、激活、留存
  • 特点:需要深入理解增长模型(AARRR 等)

[!note] 关于跳槽 L2 阶段是跳槽的黄金时期。一方面你已经有了 1-3 年的经验,简历不再空白;另一方面你还没有太高的薪资基数,企业愿意给机会。如果你在现在的公司成长空间有限,可以考虑换一个能给你更大舞台的平台。


给 L2 学习者的真诚建议#

1. 主动找项目,不要等项目找你#

很多人抱怨”公司没有好项目”,其实是自己没有主动去找。业务方有什么痛点?老板关心什么问题?这些都是你可以主动去分析的方向。不要等别人给你分配任务,要学会自己发现问题。

2. 学会”包装”你的工作#

同样是一份分析,有人说”我统计了一下用户数据”,有人说”我通过用户分层分析,识别出 20% 的高价值用户,为运营策略提供了数据支撑,帮助提升了 15% 的复购率”。内容可能差不多,但后者明显更有说服力。

学会用”背景-方法-结论-影响”的结构来描述你的工作,无论是向老板汇报还是写简历,都会更有说服力。

3. 建立你的”分析案例库”#

每次做完一个有价值的分析,记得把它整理成一个案例:

  • 背景是什么
  • 用了什么方法
  • 得出什么结论
  • 对业务有什么影响

这些案例积累起来,就是你跳槽时的”作品集”,也是你自己成长的记录。

4. 不要只看数据,要理解业务#

最优秀的数据分析师,往往也是最懂业务的人。花时间去了解你所在行业的商业逻辑,去和业务方聊天,去理解他们的痛点和目标。这些软实力,比硬技术更难替代。

5. 保持输出#

可以写博客、做分享、带新人——任何形式的输出都可以。输出会逼迫你把知识系统化,也会帮你建立个人影响力。很多好机会,都是因为别人看到了你的输出才找上门的。


接下来#

当你能够熟练运用分析框架,独立完成专项分析并推动业务落地,开始有这样的困惑时:

  • “我想预测未来会发生什么,而不只是解释过去发生了什么”
  • “A/B 测试我会做,但怎么判断结果是否显著?怎么控制其他变量的影响?”
  • “我想做更复杂的分析,可能需要用到机器学习”
  • “我想从分析师变成数据团队的负责人”

恭喜你,你已经准备好进入下一个阶段了。

➡️ L3:高级专家 —— 学习预测方法和因果推断,做更科学的分析


相关资源

数据分析师 L2:实战进阶
https://blog.ss-data.cc/blog/data-analyst-l2-advancement
Author 石头
Published at 2025年1月5日
Comment seems to stuck. Try to refresh?✨