【问题标题】:Get the marginal effect of a variable (interacted with another) in a logit model with 6 explanatory varibles在具有 6 个解释变量的 logit 模型中获取变量(与另一个变量交互)的边际效应
【发布时间】:2019-12-20 17:20:03
【问题描述】:

我运行了下面的模型,想要得到“PMSC0to6”(0~6)的边际效应,取决于“Ceasefire2”(二进制)。

result_PMSC06_CF <- glm(Participatory_Peace ~ sxp  + GDPpc + wartype + coldwar + Ceasefire2*PMSC0to6,
family = binomial(link = "logit"))

所以我运行了以下,

Sm4_2 <- summary(margins(result_PMSC06_CF, 
                         at = list(Ceasefire2 = 0:1))) %>% 
  dplyr::filter(factor == "PMSC0to6") %>% 
  as.data.frame()

但是,我想知道是否需要放置“Ceasefire2”和“PMSC0to6”以外的其他变量。

所以问题是,

  1. 上面的 Sm4_2 是否可以得到 PMSC0to6 的边际效应?
  2. 如果不是,我是否应该将其他变量的均值放入 at = list() 中?

非常感谢您。

【问题讨论】:

    标签: r logistic-regression interaction margins marginal-effects


    【解决方案1】:

    对您的问题的简短回答:

    1. 是的。

    2. 可能不会。

    2.的较长答案:

    在逻辑回归中,任何协变量的边际效应都随着所有协变量而变化。有几种不同的方法可以将一系列边际效应“折叠”成每个协变量的单个边际效应:

    • 边际部分效果(margins::margins 中的默认值)- 更多细节here
    • 代表性案例的边际效应 - 选择一些代表点,这些点可能在样本中准确表示,也可能不准确,并计算这些点的边际效应(这通常是一个手动过程,需要对主题有一定程度的了解数据)
    • 平均边际效应 - 计算样本中所有点的边际效应并取平均值
    • 均值的边际效应 - 计算所有协变量的平均值并计算该点的边际效应,正如您的第二个问题所建议的那样

    均值处的边际效应通常不是一个好的选择,原因已讨论here

    请注意,R 可用的其他一些软件包以及 Stata 的 marginsmfx 软件包可以计算所谓的“均值边际效应”(即,具有协变量值的单个观测值的边际效应等于整个样本的平均值)。对这些的实质性解释是相当模棱两可的。虽然估计 MEM(而不是 AME 或 MER)曾经是一种常见做法,但现在认为这有点不合适,因为它侧重于可能不存在的情况(例如,0/1 变量的平均值不会反映可以实际存在于现实中),我们通常对变量在多个可能的协变量值上的影响感兴趣,而不是任意选择的以这种方式被视为“典型”的案例。

    所有其他选项,包括您当前代码计算的边际偏效应,在不同情况下都是有效和有用的。但根据您的最终目标,可能值得通过将这些协变量添加到 at 参数作为 EDA 过程的一部分来查看其他协变量如何影响 Ceasefire2 的边际效应。

    【讨论】:

      猜你喜欢
      • 2021-03-24
      • 2020-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-23
      • 1970-01-01
      相关资源
      最近更新 更多