虚拟结果反驳器#
虚拟结果反驳器测试:当我们用一个独立的随机变量替换真实的因变量时,估计的因果效应会发生什么?(提示:效应应趋于零)此外,该测试的扩展还可以检查任何因果效应不必为零的模拟结果:当我们用一个基于已知数据生成过程(最接近给定数据集)的模拟结果替换因变量时,估计的因果效应会发生什么?(提示:它应该与数据生成过程中的效应参数匹配)
测试零因果效应#
>>> ref = model.refute_estimate(identified_estimand,
>>> causal_estimate,
>>> method_name="dummy_outcome_refuter"
>>> )
>>> print(ref[0])
测试非零因果效应#
>>> coefficients = np.array([1,2])
>>> bias = 3
>>> def linear_gen(df):
>>> y_new = np.dot(df[['W0','W1']].values,coefficients) + 3
>>> return y_new
>>> ref = model.refute_estimate(identified_estimand,
>>> causal_estimate,
>>> method_name="dummy_outcome_refuter",
>>> outcome_function=linear_gen
>>> )
>>> print(ref[0])
要查看使用虚拟结果反驳器的完整示例,您可以查看笔记本 使用用户定义结果函数创建自定义反驳的简单示例。