最近在工作中,遇到一个场景,在可能存在多种影响原因的情况下,怎样测算出某一个原因对结果的影响。
通过请教得知因果推断模型就是主要解决我所遇到的这类问题,故对其中双重差分法总结
双重差分法DID(difference-in-differences):
概述:
自然实验是通过观察实验和外生冲击,找到类似随机对照实验的环境,而日常事件自然灾害,政策制定等很难找到可 视为自然实验的环境,所以Heckman等1985年提出双重差分法,最早将该方法用于公共政策效应评估。
基本思想:
双重差分法可以理解为对随机分配实验的一种模拟,在没有随机实验的情况下去验证因果关系。
实现步骤:
-
分组:对于一个自然实验,其将全部的样本数据分为两组:一组是受到干预影响,即实验组;另一组是没有受到同一干预影响,即对照组;
-
目标选定:选定一个需要观测的目标指标;
-
第一次差分:分别对在干预前后进行两次差分(相减)得到两组差值,代表实验组与对照组在干预前后分别的相对关系;
-
第二次差分:对两组差值进行第二次差分,从而消除实验组与对照组原生的差异,最终得到干预带来的净效应。
案例:
假设一家珠宝店在2014年期间没有投放广告,期间的销售额为1000万元,,而2015年投放了100万元广告,销售额为1400万元,收益增加300万元。
那么我们是否可以将这300万元,全部归因于广告带来的收益呢?
不知道你心里是否和我一样总感觉差点什么,其实是实验前后侧无法证明广告与销售额之间的因果关系,因为这个模型太简单了,有很多因素都没有考虑进去。
因素一:这种方法没能考虑到随时间产生的自然变化“趋势”所造成的影响
因素二:“回归平均”的可能性,这是一种统计学现象,在不断收集数据的过程中,偶尔出现一个极端值后,数据会逐渐回归到通常的水平
......
那么怎样消除除了是否投入广告之外的其他影响因素呢?
1.分组:
在受到干预的组(干预组)中,设干预前的结果为A1,干预后的结果为A2;然后在未受到干预的组(对照组)中,设干预前的结果为B1,干预后的结果为B2。
干预组的前后比较(A2-A1)和对照组的前后比较(B2-B1)之间的差(A2-A1)-(B2-B1),即为用双重差分法推算出的干预效果。
从A1到A2的线代表事实(投放广告后的结果),从B1到B2的线代表反事实(如果投放广告的店铺未曾投放广告会产生什么结果)。
从干预组的前后差异A2-A1中减去对照组的前后差异B2-B1,这种方法排除了“趋势”的影响,所以能够准确地推算出因果效应。
2.目标选定
最终测算广告对销售额的影响,所以以销售额作为目标。
3.差分
假设在全国所有店铺中,A地区的店铺在2015年投放了广告,而B地区的店铺在同一时期没有投放广告。B地区店铺2014年12月的销售额为600万元,2015年12月的销售额为800万元。
投放了广告的A地区店铺2015年的销售额相比2014年增长了400万元,而没有投放广告的B地区店铺销售额增长了200万元(800万元-600万元)。两地区的销售额涨幅的差200万元(400万元-200万元),即为双重差分法得出的干预的因果效应。
即使广告投放成本为100万元,投放广告也能为店铺带来100万元(200万元-100万元)的额外收益。
使用条件:
双重差分法成立的两个前提条件
1.干预组和对照组在投放广告之前的销售额趋势平行
2.受到干预期间没有出现影响销售额的其他变化。
参考:《原因与结果的经济学》