【实战】如何做归因分析?——以断货率变化为例详解三种常用方法(贡献度分析,因素分解分析,变量影响分析,差分法)

【实战】如何做归因分析?——以断货率变化为例详解三种常用方法(贡献度分析,因素分解分析,变量影响分析,差分法)

一、引言:什么是归因分析?

在电商、零售、供应链等业务场景中,我们经常需要回答这样的问题:

某个指标发生了变化,是哪些因素导致的?每个因素的贡献度是多少?

这类问题在数据分析中被称为 归因分析(Attribution Analysis)因素分解分析(Factor Decomposition Analysis)。它广泛应用于销售增长、用户活跃、库存周转、断货率等指标变动的解释中。

归因分析 也被称为:

  • 贡献度分析(Contribution Analysis)
  • 因素分解分析(Factor Decomposition Analysis)
  • 变量影响分析(Impact Analysis / Driver Analysis)
  • 在经济学中也称为 增长核算(Growth Accounting)

本文将以一个实际案例为基础,介绍三种常用的归因分析方法:

  1. 差分法(Differential Method)
  2. 固定变量法 / 替换法(Counterfactual Replacement Method)
  3. Shapley 值法(Shapley Value Method)

并通过 断货率变化 的具体数据,展示每种方法的实现逻辑和计算过程。


二、案例背景与数据说明

1. 指标定义

断货率 = 断货天数总和 ÷ (Asin数量 × 时间周期)

时间周期设为30天。

2. 数据概览

指标初始值(20250501)最终值(20250518)变化量
Asin数量 A81558253+98
断货天数 D2943023950-5480
断货率 R12.03%9.67%-2.36%

目标:分析 Asin 数量增加 和 断货天数减少 各自对断货率下降的贡献。


三、方法一:差分法(Differential Method)

1. 原理简介

差分法基于微分思想,适用于连续可导的目标函数。假设目标函数为:

R = D A × 30 R = \frac{D}{A \times 30} R=A×30D

其全微分为:

Δ R ≈ ∂ R ∂ D ⋅ Δ D + ∂ R ∂ A ⋅ Δ A \Delta R \approx \frac{\partial R}{\partial D} \cdot \Delta D + \frac{\partial R}{\partial A} \cdot \Delta A ΔRDRΔD+ARΔA
其中偏导数分别为:

  • ∂ R ∂ D = 1 A × 30 \frac{\partial R}{\partial D} = \frac{1}{A \times 30} DR=A×301
  • ∂ R ∂ A = − D A 2 × 30 \frac{\partial R}{\partial A} = -\frac{D}{A^2 \times 30} AR=A2×30D

2. 计算步骤

(1) 偏导数计算
  • ∂ R ∂ D = 1 8155 × 30 ≈ 0.000004087 \frac{\partial R}{\partial D} = \frac{1}{8155 \times 30} \approx 0.000004087 DR=8155×3010.000004087
  • ∂ R ∂ A = − 29430 ( 8155 ) 2 × 30 ≈ − 0.00001475 \frac{\partial R}{\partial A} = -\frac{29430}{(8155)^2 \times 30} \approx -0.00001475 AR=(8155)2×30294300.00001475
(2) 变化量代入
  • Δ D = − 5480 \Delta D = -5480 ΔD=5480
  • Δ A = + 98 \Delta A = +98 ΔA=+98
(3) 贡献计算
  • 断货天数贡献:
    Δ R D ≈ 0.000004087 × ( − 5480 ) ≈ − 2.24 % \Delta R_D \approx 0.000004087 \times (-5480) \approx -2.24\% ΔRD0.000004087×(5480)2.24%

  • Asin数量贡献:
    Δ R A ≈ − 0.00001475 × 98 ≈ − 0.1446 % \Delta R_A \approx -0.00001475 \times 98 \approx -0.1446\% ΔRA0.00001475×980.1446%

(4) 总贡献验证

Δ R total ≈ − 2.24 % − 0.1446 % = − 2.3846 % \Delta R_{\text{total}} \approx -2.24\% - 0.1446\% = -2.3846\% ΔRtotal2.24%0.1446%=2.3846%

与实际变化 -2.36% 接近,误差来源于线性近似。

3. 小结

  • 断货天数减少 贡献约 94.7%
  • Asin数量增加 贡献约 5.3%

四、方法二:固定变量法 / 替换法(Counterfactual Replacement Method)

1. 原理简介

该方法通过保持一个变量不变,只改变另一个变量来观察结果的变化,从而衡量每个变量的独立影响。

2. 计算步骤

(1) 假设 Asin 不变(保持 A₁ = 8155)

R hypothetical1 = 23950 8155 × 30 ≈ 9.79 % R_{\text{hypothetical1}} = \frac{23950}{8155 \times 30} \approx 9.79\% Rhypothetical1=8155×30239509.79%

Δ R D = 9.79 % − 12.03 % = − 2.24 % \Delta R_D = 9.79\% - 12.03\% = -2.24\% ΔRD=9.79%12.03%=2.24%

(2) 假设断货天数不变(保持 D₂ = 23950)

R hypothetical2 = 23950 8253 × 30 ≈ 9.67 % R_{\text{hypothetical2}} = \frac{23950}{8253 \times 30} \approx 9.67\% Rhypothetical2=8253×30239509.67%

Δ R A = 9.67 % − 9.79 % = − 0.12 % \Delta R_A = 9.67\% - 9.79\% = -0.12\% ΔRA=9.67%9.79%=0.12%

3. 小结

  • 断货天数减少 贡献约 94.9%
  • Asin数量增加 贡献约 5.1%

五、方法三:Shapley 值法(Shapley Value Method)

1. 原理简介

Shapley 值来自博弈论,用于公平分配多个参与者对整体成果的贡献。在数据分析中,可用于评估不同变量对目标指标变化的“公平”贡献。

2. 计算步骤

(1) 定义四个状态
状态ADR
Base81552943012.03%
A only82532943011.91%
D only8155239509.79%
Final8253239509.67%
(2) 枚举所有排列顺序并计算边际贡献
排列顺序A 贡献D 贡献
A → D-0.12%-2.24%
D → A-0.12%-2.24%
(3) 计算 Shapley 值(平均值)
变量Shapley 值
Asin数量 A-0.12%
断货天数 D-2.24%

3. 小结

  • 断货天数减少 贡献约 94.9%
  • Asin数量增加 贡献约 5.1%

六、总结对比

方法断货天数贡献Asin数量贡献是否考虑交互作用
差分法-2.24%-0.1446%
固定变量法-2.24%-0.12%
Shapley 值法-2.24%-0.12%

所有方法得出的结论一致:断货天数的减少是断货率下降的主要原因


七、应用场景

  • 销售额变化归因(价格 vs 销量)
  • 用户留存率变化(新客减少 or 老客流失)
  • 库存周转率提升(出库增加 or 库存积压减少)
  • 广告转化率波动(点击率 or 转化率)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值