辛普森悖论什么时候“结束”?

机器算法验证 数理统计 辛普森悖论
2022-03-26 04:47:49

免责声明:这不是如何解决辛普森悖论的副本。

本博客所述,以下是泰坦尼克号上人员的数据:

当按性别划分时,这是相同的数据:

在此处输入图像描述

与第一张表中看到的结果完全相反!

问题:

我是不是有可能找到另一个参数,比如Height of Passenger,新的结果表明与上面表 2 中的结果完全相反?

例如,乘坐三等舱的身高 5.5 英尺的男性乘客比身高 5.5 英尺的男性机组人员的存活率更高。

这在哪里结束?如果理论上我可以反复找到包含变化或反转结果的参数,那么是否有可能认为任何结果都可以安全地用于未来的计算?

2个回答

是的,您是对的,我们可以创建一个变量与另一个变量的条件关联将随着您控制的每个附加协变量而改变的情况。对于一个简单的模拟,我建议你查看 基于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

增加关于性的信息提高了我们的理解,但是,仍然可能有一些我们未能衡量的其他重要因素会改变我们的解释。