问题标签 [marginal-effects]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 获取 R 中 glmer 模型的边际效应和预测概率
我正在尝试在 R 的逻辑回归模型中计算分类变量随时间推移的预测概率值和边际效应值(使用 p 值)。基本上,我想知道 1)响应变量的预测概率(事件发生)每年 2 个类别之一的样本站点和 2)一个站点在 1 个类别中与每年另一个类别的平均边际效应。我可以使用 ggeffects 包和 margins 包中的边际效应值来获得预测的概率值,但我还没有找到一种方法来从单个包中获取两组值。
所以我的问题是 1)是否有一个包/方法来获取这两组值,以及 2)如果我从 ggeffects 获得预测概率值和从边际获得边际效应值,这些值是否兼容?或者软件包处理模型的方式是否存在差异,这意味着我不能假设一个模型的边际效应对应于另一个模型的预测概率?3)在margins包中,如何获得两个因子变量随时间相互作用的平均边际效应?4)如何让margins()处理大型数据集?
以下是一些示例数据:
我感兴趣的是状态和分类变量对事件发生概率的影响,以及状态和分类变量的影响如何随时间变化。这是模型:
我可以使用 ggeffects 来获取每个状态和类别组合随时间推移的预测概率值:
这对于可视化 5 个状态下预测概率随时间的变化非常有用。但我不知道如何使用 ggeffects 从这些值估计边际效应。使用 margins 包,我可以得到分类变量随时间的边际效应,但我不确定如何一起解释两个不同包的输出,或者这是否合适(我的前两个问题)。此外,我不知道如何获得边际以给我样本站点的边际效应,随着时间的推移处于分类变量级别/状态的每个组合中(带我到我的第三个问题):
我使用的实际数据集相当大(原始数据的 csv 为 1.51 GB,当我将其保存为 .rds 文件时,回归模型对象为 1.29 GB)。当我尝试对我的数据使用margins()时,我收到一条错误消息:
有关解决此问题的任何建议,以便我可以在我的数据上使用此功能?
我将不胜感激任何提示——我应该检查的包、我在代码中犯的错误或我的概念理解等。谢谢!
r - 如何在 felm() 函数之后绘制交互的边际效应
我基于具有一堆单位固定效应的“巨型”面板数据进行了回归。所以我使用了包“lfe”中的函数“felm()”。另外,我在回归中有两个连续变量的交互项。但是在绘制 x 对 y 的边际效应如何随 x2 变化时,似乎“felm()”生成的对象通常与“ggplot”、“interplot()”和“meplot”等大多数绘图函数不兼容。但是我必须使用“felm()”,因为我需要控制大量的单位固定效果(就像人们在 Stata 中通过“reghdfe”所做的那样)。那么,我如何在 R 中解决这个问题呢?随时让我知道一些出路。谢谢!
下面是一个关于 interplot() 如何不能与 felm() 一起使用的示例:
然后出现错误:
我也试过 meplot() 但它仍然不起作用:
我收到一个错误:
stata - 从边际效应的 coefplot (mlogit) 中删除变量
coefplot
在Stata中运行多项逻辑回归后,我想通过边际效应创建系数图。我想得到什么帮助:
我想在图中只保留一个变量 -
i.cohort
它有 6 个类别,并希望从图中删除其他变量。另外,如果可能的话,我想保留所有
i.cohort
包括基本类别在内的类别。因此,正如附图所示,目前我只能5
使用以下代码获取类别。对于结果变量的类别,我想保持如图所示,即所有四个类别的系数值,但具有置信区间 (CI) 的水平指示。
到目前为止,这是我的代码和输出:
您可以在下面找到一个示例数据集:
在这种情况下,我想将这两个类别都保留i.foreign
在系数图中,而不是仅仅1
和0
省略作为基本结果,以及来自 的所有 5 个结果类别rep78
。我希望删除其他预测器。
r - 在具有 6 个解释变量的 logit 模型中获取变量(与另一个变量交互)的边际效应
我运行了下面的模型,并希望获得“PMSC0to6”(0~6)的边际效应,具体取决于“Ceasefire2”(二进制)。
所以我跑了以下,
但是,我想知道是否需要放置除“Ceasefire2”和“PMSC0to6”之外的其他变量。
所以问题是,
- 上面的 Sm4_2 是否可以得到 PMSC0to6 的边际效应?
- 如果不是,我应该将其他变量的均值放在 at = list() 中吗?
非常感谢您提前。
r - 在 R 中使用带有二次项和交互虚拟变量的边距命令
我的目标是创建边际效应和类似于“边际效应”下这篇文章中所做的情节:https ://www.drbanderson.com/myresources/interpretinglogisticregressionpartii/
由于我无法提供实际模型或实际数据(数据很敏感),因此我将提供一个通用示例。
我使用 glm 函数创建了以下模型:
x2 是一个连续变量,我想计算另一个连续变量 x3 的平均值以及 x1、x4 和 x5 的预定义值的边际效应。为了进一步简化,假设 x1 是早上、下午或晚上的分类(因此在 logit 模型中产生两个系数),x4 是左或右的分类,x5 是上或下的分类(因此 x4:x5产生左和上、左和下、右和上的系数结果,右和下排除交互作用)。
与帖子中所做的类似,我运行以下代码:
得到一个 x2 值的序列来评估边际效应。最后,我尝试运行 margins 命令:
但是,运行它会产生以下错误:
给定 a) 我的模型中 x2 的二次性质,以及 b) 模型中项的交互,关于如何成功运行 margins 命令的任何想法?
附带说明:我知道如果我愿意,我可以手动计算这些东西。但是,为了减少代码和易于重现,我想让这种方法起作用。感谢您的帮助!
r - R中的OLS具有边际效应
我正在寻找一个代码来估计以下方程作为带有面板数据的 OLS:
ΔYjt = αΔXjt + τt + ujt
其中 Δ 是 Y 和 X 随时间的变化,ja 扇区,t 时间,τ 是一组时间虚拟变量,u 是误差项。
我是 R 编程的初学者,不幸的是我找不到合适的代码来考虑 Δ。
有谁知道我如何运行回归?
感谢您的时间和帮助
r - R中有序probit / logit模型中每个变量的单一边际效应
我必须重新创建一个使用 R 在 Stata 中构建的模型。我想在使用有序概率/logit 模型后计算边际效应。我有一个因(序数)变量,有 5 个结果和几个自变量。
我尝试了“MASS”和“erer”以及“oglmx”-package,它们都为我的 DV 的每个结果提供了边际效应。喜欢:
x <- ocME(m1, x.mean=TRUE)
x
effect.Str agree effect.Agree effect.Disag effect.Str disag
x1 -0.198 -0.047 0.076 0.169
x2 -0.050 -0.012 0.019 0.043
x3 -0.018 -0.004 0.007 0.016
但是,这两个包似乎都没有边际效应函数,它只是为每个自变量提供一个单一的边际效应值。我想为每个自变量计算平均值的单个边际效应 - 请参见 Stata:
我认为stata中的代码是:. margins, dydx(*) predict(outcome(1))
几乎与以下问题相同:在 R 中找到多项有序 Probit/Logit 回归的边际效应。但我认为他想要什么价值观存在误解,这就是为什么没有明确答案的原因。
我希望我清楚我想要什么样的边际效应。如果有人知道一个好的包裹或如何手动计算它们,您将成为我的救星。谢谢大家!
r - “边际”如何计算线性模型中的边际效应?
我有一个线性模型(lm
对象)并用于margins
计算回归量的边际效应。据我了解,如果回归量在模型中只有一次,这相当于部分效果。这对“孩子”来说是正确的。
输出:
但是为什么年龄的边际效应不等于:
我的意思是,它不应该等于我的模型公式中的偏导数吗?
r - 连续变量和数据之间的三向交互
我想绘制连续变量之间的三向交互并显示数据。
我得到三个并排的面板和每个组因子的边际均值 ( tiv
)。
我现在想使用 geom_point 和 facet_grid/facet_wrap 以及不同的分组因子手动添加数据点。但是,当我这样做时,绘制边际均值的线现在连接数据点。这只发生在我将数据点分成面板时,即。当我添加 facet_grid/facet_wrap 时。但是,当我不添加 facet_grid 时,所有数据点都会显示在所有面板中。
有谁知道如何解决这一问题?
代码和图如下。
下图是在没有使用 facet_grid 的情况下创建的。所有数据点都显示在所有面板中。
理想情况下,我正在寻找一种解决方案,其中数据点被分成不同的面板,线条绘制边际均值。
编辑:在使用 ggpredict 玩了更多之后,我想我认为问题出在两个 facet_* 语句上。似乎只有一个适用。有没有办法覆盖在同一面板上拆分的两个数据集?
这是我尝试使用 ggpredict 的代码片段(我将两者都绘制为点,因为它有助于查看线条发生了什么)
当我运行这条线时,“pr”中的所有数据都绘制在所有面板中。如果我删除最后一个 facet_* 语句,则“pr”中的数据将正确拆分为面板,但“tmp”中的数据现在显示在所有面板中!
非常感谢您的帮助!码头
r - 逻辑回归中平均边际效应的二阶差检验
我有一个与此处类似的问题:Testing the difference between margin effects computed across factors。我使用相同的代码为两组生成平均边际效应。不同之处在于我运行的是逻辑回归模型而不是线性回归模型。我的平均边际效应在概率尺度上,所以 emmeans 不会提供正确的对比。有没有人对如何测试第 1 组和第 2 组之间的平均边际效应是否存在显着差异有任何建议?
非常感谢,伊拉娜