Skip to content
返回分析与实验

相关性分

度量两个指标如何同动,以及不把相关当因果的关键纪—最常见的分析错误

为什么

相关性分析快、便宜、诱人:你有两列数字,跑 Pearson 系数,得—-1 —1 间一个像答案的数。危险在于相关是两变量的数学性质,但你实际问的是业务问题—X 是否导致 Y,以致我—X —Y 变?"。相关答不了 —冰淇淋销量和鲨鱼袭击相关,但禁冰淇淋不会减鲨鱼袭击。相关性分析的纪律是:算相关、诚实报"它们同动"、然后做更难的工作判断关系是因果(通过受控实验)还是混淆(两者都被第三变量如夏天气温驱动)。跳第二步就是团队上—与留存相—但上线后什么都不动的功能的方式

何时使用

当你有两个指标想知道是否同动,作为因果实验的前置。绝不可单独作为上线决策依据

如何做

1. 先陈述业务问题:"使用功能 X 是否—30 天留存相关?" —问题决定相关哪些变量及如何切—2. 同粒度(每用户、每天)同时间窗拉两序列 —相关日聚—X 与每用户 Y 是无意义的数
3. 算系数前先散点图 —Pearson 0.4 可以是线性云、U 形或两簇,只有散点告诉你哪种
4. —Pearson(线性)—Spearman(单调)—若显著不同则关系非线性且 Pearson 误导
5. 查混淆:是否有第三变量(时间、队列、功能开关)驱动两者?按混淆切片在每片内重—6. 报为"X —Y 相关(r=0.42, n=1200),但未确立因果" —但书非可—7. 若相关强且想据此行动,设—A/B 测试:随机分功能 X、测 Y、比—只有 RCT 消解相关/因果鸿沟
8. —notebook 记散点、系数、混淆检查和但书 —让下一个人不重新发现它是混淆的

示例

# 问题:完成教程是否与 7 天留存相关?
n = 4,200 用户,注册于 2026-08-01 —2026-08-31

散点:tutorial_steps_completed—-8)vs days_active_in_first_7d—-7—  -> 正向趋势,但两个可见簇:
     —A(n=1800):完成 0-2 步,留存 0-2 —     —B(n=2400):完成 5-8 步,留存 4-7 —
Pearson r = 0.61  Spearman rho = 0.58(接近,大致单调—
混淆检查:signup_source
  organic:r = 0.18(此片内弱)
  referral:r = 0.64(此片内强)
  -> 总体 0.61 —referral 用户既完成更多教程又留存更多驱动—     两者皆由既有动机导致,非教程本身—
结论:完成教程与留存相关(r=0.61),但相—largely 被注册来源混淆—本就有动机的用户(referral)既完成教程又留存—勿据此上—强制完成教程" —A/B 测试随机教程显著度并按来源测留存。

常见问题

  • ⚠在聚合数据(日总计)上算相关而非每用—两个都随时间上升的日总计总高度相关,但这—时间流—的重言式非"X 导致 Y"
  • ⚠忽略 Simpson 悖论 —总体相关为正但每子组为负(或反之),按聚合相关行动损害每组
  • ⚠把高相当因果证明并上线功—"用功—X 的用户留存更好,所以应强制功能 X"是经典的相干/因果错误,A/B 测试正是为防此而生
  • ⚠报系数不带散点图 —干净线性云—Pearson 0.5 和有间隙两簇—Pearson 0.5 是完全不同的关系,单数字隐藏你有的是哪种

最佳实践

  • ✓信系数前总看散点 —系数是散点的摘要,U 形或两簇分布的摘要是隐藏决定行动的形状的数字
  • ✓按每个似真混淆(队列、来源、套餐、地域)切片报片内相—若片内相关与聚合不同,你有混淆且聚合误导
  • ✓用相关生假设,用 A/B 测试—相关快便宜告诉你看哪;RCT 慢贵告诉你真相;两者都要且此序
  • ✓系数旁报样本量和置信区间 —r=0.6 —n=30 是噪声,r=0.6 —n=3000 是发现,—n 的数字不可解读