首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >因果图的呈现效果修正

因果图的呈现效果修正
EN

Stack Overflow用户
提问于 2022-02-22 09:30:43
回答 2查看 62关注 0票数 1

我对因果推理非常陌生,我想尝试一些治疗效果评估的方法。为此,我在Python中创建了以下数据生成过程:

代码语言:javascript
复制
import numpy as np

n = 10000
X3 = np.random.randint(1,4, n)
X2 = np.random.randint(1,11, n)

X1 = 5 * X2 + 3 * X3 + np.random.randint(-1,3, n)
X4 = 10 * X2 + np.random.randint(-2,5, n)

#treatment probability
propensity = np.where(X1 > 30, 0.8, 0.2)
T = np.random.binomial(1, propensity)

#treatment effect
tau = np.where(X2 > 5, 10,0) * T * (-1)

#define outcome
Y = 50 * X2 - 5 * np.sqrt(X1) + T*tau + np.random.randint(10,21, n)

对于生成的数据,将创建以下图表:

达格

我的问题是:由于X2 (根据数据生成)不影响T的分配,但对治疗效果本身有影响,那么是否需要X2和T (X2->T)之间的边界?

非常感谢!

EN

回答 2

Stack Overflow用户

发布于 2022-05-05 16:10:08

可悲的事实是,一般来说,DAG只能告诉您哪些变量会影响其他变量,但是它们不能告诉您它们是如何做到的--它们不描述函数的形式。

有几种结构形式可以产生效果修改。,但是您的数据生成模拟中的一个与您在DAG中已经绘制的那个匹配(X2影响Y,而不是T)。

如果传递交互很重要,提出了基于DAG的方法。,但是它们不再是有效的DAG。

票数 1
EN

Stack Overflow用户

发布于 2022-11-04 08:49:55

仅仅因为您没有看到X2和T之间的直接联系,这并不意味着它对T的分配没有影响,因为您设置了您所知道的数据生成规则,因为X2通过X1对T有一定的影响,这在DAG中是很清楚的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71218816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档