辛普森悖论什么时候“结束”?
是的,您是对的,我们可以创建一个变量与另一个变量的条件关联将随着您控制的每个附加协变量而改变的情况。对于一个简单的模拟,我建议你查看 基于Pearl 论文的 Dagitty's Simpson's Machine。
但是,您应该问自己的问题如下:您为什么担心边际关联与条件关联不同?这是完全正常的。
所以当你问
什么时候可以考虑任何可以安全用于未来计算的结果?
似乎您不仅在寻找关联,而且还在寻找稳定的结构关系。您的问题的简短答案是数据本身,无论有多大,都无法帮助您-您需要结构知识。关于更多关于辛普森悖论的信息,这个答案可能会有所帮助。
是的,我认为总有一些未探索的因素——如果我们评估了那个因素——会改变我们对结果的解释。这只是知识不完善的现实。在观察性研究中尤其成问题,例如所描述的观察不平衡的研究。(也就是说,每个班级中每个性别的人数不相等)。
但我们应该感到安慰的是,我们有一些机会尽我们所能评估我们的数据。
对于这个例子,第一个表的优势比是 1.007,这表明两个类别之间的存活率差异非常小,我们可能不会认为它有趣。也就是说,每个班级的存活率基本上是24%。
这里的结果是,我认为这个示例与其说是趋势反转的悖论示例,不如说是在第一个表中看不到任何有趣的东西,但在第二个表中添加更多信息时会发现一些有趣的示例。
只有当我们掌握了第二张表中的信息时,我们才能对影响生存的因素有所了解。
因为潜在的问题是关于我们可以得出关于类对生存率的影响的结论,所以我将使用逻辑回归来回答这个问题。
##### Table 2 #####
Data = read.table(header=T, text="
Class Sex Survive NotSurvive
Third M 75 387
Third F 76 89
Crew M 192 670
Crew F 20 3
")
Trials = cbind(Data$Survive, Data$NotSurvive)
model = glm(Trials ~ Class + Sex + Class:Sex,
data = Data,
family = binomial(link="logit"))
library(car)
Anova(model)
### Analysis of Deviance Table (Type II tests)
###
### Response: Trials
### LR Chisq Df Pr(>Chisq)
### Class 13.510 1 0.0002373 ***
### Sex 88.568 1 < 2.2e-16 ***
### Class:Sex 8.502 1 0.0035472 **
请注意,Class 和 Sex 的交互作用是显着的,这表明这是我们应该关注的效果。
在下面的结果中,prob是问题表中计算的概率。
library(emmeans)
emmeans(model, ~ Class:Sex, type="response")
### Class Sex prob SE df asymp.LCL asymp.UCL
### Crew F 0.8695652 0.07022340 Inf 0.6645495 0.9573281
### Third F 0.4606061 0.03880395 Inf 0.3860325 0.5369860
### Crew M 0.2227378 0.01417187 Inf 0.1961989 0.2517422
### Third M 0.1623377 0.01715628 Inf 0.1314483 0.198824
我们还可以使用估计的边际均值来估计如果每个班级的性别平衡,每个班级的存活率是多少。下面,我们看到事实上,Crew 中的存活率在统计上更高。
这与我们仅使用第一个表中的信息得出的结论不同。
emmeans(model, ~ Class, type="response")
### Class prob SE df asymp.LCL asymp.UCL
### Crew 0.5802181 0.07605615 Inf 0.4284069 0.7182285
### Third 0.2891697 0.02063485 Inf 0.2504569 0.3312222
增加关于性的信息提高了我们的理解,但是,仍然可能有一些我们未能衡量的其他重要因素会改变我们的解释。

