问题标签 [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 - How to get marginal effects for categorical variables in mlogit?
I want to compute marginal effects for a "mlogit"
object where explanatory variables is categorical (factors). While with numerical data effects()
throws something, with categorical data it won't.
For simplicity I show a bivariate example below.
numeric variables
factor variables
While glm()
still throws something,
the mlogit()
approach
throws this error:
How could I solve this?
I already tried to manipulate effects.mlogit()
with this answer but it didn't help to solve my problem.
Note: This question is related to this solution, which I want to apply to categorical explanatory variables.
edit
(To demonstrate the issue when applying the given solution to an underlying problem related to a question linked above. See comments.)
data
r - 使用 plot_model() 在原始尺度上绘制边际效应
我试图从一个模型(用 lme4 完成)绘制边际效应plot_model()
模型(同一模型的 2 个版本)看起来像
版本 1:
版本 2:
在这两个版本中,连续预测变量 X 和 Z 使用scale()
函数进行缩放,但在版本 1 中,它在创建模型 m1 之前完成,并作为单独的列(Xs 和 Zs)保存在 中dataframe=dat
,而在版本 2 中,它在模型中指定平方米
我现在的问题是如果我按原样绘制 m1
我想绘制 X 的边际效应,但不是 x 轴上 X 的缩放值,我想拥有我尝试过的原始值
myfun
被定义为scale()
所以,这给了我两个不同的情节。由于情节 b 看起来类似于 m1 的情节而没有重新调整 x 轴,所以我会说情节 b 是正确的情节。但我不明白 term="..." 中的 "[myfun]" 是如何工作的以及它的作用。谢谢你的帮助!
r - Probit回归:分类变量的边际效应?
我在 R 中运行概率回归。该模型混合了一些连续变量和分类变量(编码为因子)。我想计算每个变量的边际效应。为此,我使用 margins 包中的命令margins,该命令返回 AME 并识别因子并显示它们每个级别的边际效应。因此,在计算边际效应时如何处理分类变量?如果连续变量保持其平均值(默认情况下),这些分类变量是如何固定的?
我希望这个问题足够清楚,这更像是一个理论问题。
r - 具有复杂交互项的 R 中的平均边际效应
我正在使用 R 计算以下模型的线性回归,并在特定点 (20,30,40,50,55) 找到年龄对披萨的边际影响。
我遇到的问题是在使用 margins 命令时,R 看不到使用I((age x age) x income)插入到 lm 中的交互项。仅当交互项采用variable1 x variable1的形式时,margins 命令才会产生准确的平均边际效应。我也无法在表table$newvariable <- table$variable1^2中创建新变量,因为边距命令不会将newvariable标识为与variable1相关。
到目前为止,这一直很好,我的交互项只是二次或 xy 交互,但现在我需要使用模型中包含的交互项AGE^2xINCOME计算平均边际效应,但我似乎可以使汇总 lm 输出正确的唯一方法是使用 I(age^2*(income)) 或在我的表中创建一个新变量。如前所述,margins 命令无法读取 I(age^2*(income)),如果我创建一个新变量,margins 命令无法识别变量是相关的,并且产生的平均边际效应不正确.
我收到的错误:
我提前感谢任何帮助。
数据总结: Pizza 是每年在 Pizza 上的支出,female,hs,college 和 grad 是虚拟变量,年收入是千美元,年龄是岁。
使用的库:
tldr
这有效:
mod6.22 <- lm(pizza ~ 年龄 + 收入 + 年龄 * 收入,数据 = piz4)
这不起作用:
mod6.22c <- lm(pizza ~ age + income + age*income + I((age * age)*income), data = piz4)
如何获得利润来读取我的交互变量 I((age*age)*income)?
r - 根据通过混淆变量调整的连续变量预测疾病概率
我对 R 包的“边距”有疑问。我正在估计一个逻辑模型:
其中:
VD2
是二分变量(1 种疾病/0 不是疾病)
VE12
是二分暴露变量(值为 0 和 1)
VE.cont
连续暴露变量
VCx
(其余变量)是混杂变量。
我的目标是获得每个组VD2
的值向量的预测疾病概率( ) ,但通过变量进行调整。换句话说,我想获得组间和组间的剂量反应线,但假设每个剂量反应线的分布相同(即没有混淆)。VE.cont
VE12
VCx
VD2
VE.cont
VE12
VCx
按照本文的命名法(https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4052139/)我认为我应该做一个可以用stata完成的“边际标准化”(方法1),但我不确定如何使用 R 来做到这一点。我正在使用这种语法(使用 R):
但我不确定我是否做得对,因为这种方法给出的结果与使用没有混淆变量和函数的模型相似predict.glm
。
也许,我应该使用边距选项,但我不理解结果,因为在列VE.cont
中获得的值不在概率标度中(0 到 1 之间)。
r - 测试跨因子计算的边际效应之间的差异
我正在尝试测试两个边际效应之间的差异。我可以让 R 来计算效果,但我找不到任何资源来解释如何测试它们的差异。
我查看了边距文档和其他边际效果包,但无法找到可以测试差异的东西。
我想进行一个测试来确定每一行 marg 中的边际效应是否显着不同;即,边际效应图中的斜率不同。这似乎是正确的,因为置信区间不重叠——表明位移的影响对于 am=0 和 am=1 是不同的。
我们在下面的评论中讨论我们可以使用 emmeans 测试对比,但这是对 am=0 和 am=1 的平均响应的测试。
这里 p 值很大,表明当 am=0 时的平均响应与 am=1 时的平均响应没有显着差异。
这样做是否合理(例如测试两种方法的差异)?
该 p 值似乎与非重叠置信区间的分析一致。
plot - 绘制与连续和虚拟交互的边际效应
我对如何绘制多重交互的作业有疑问,如果有人能提供帮助,我将不胜感激。我知道这是一个热门话题,但我还没有看到解决我的具体问题的问题。我希望不是重复
我有一个具有 3 个解释变量和两个交互作用的模型。两个变量是连续的,一个是虚拟变量。我想将三种交互的边际效应绘制成一张图像。模型是这样的
y = a+ b_1c1 + b_2c2 + b_3d + b_4c1c2 + b_5c1d
总之,我有一个连续变量(c1),它与另一个连续变量(c2)和虚拟变量(d)相互作用。下面的代码使用 MASS 包中的数据来提供可重现的示例。
我创建了我的模型
我想将Horsepower
on的估计影响绘制price
为EngineSize
for =0(否)的函数,并将on的Man.trans.avail
相同条件效应绘制为 for =1(是)的函数。可能将它们放在同一个情节中。Horsepower
price
EngineSize
Man.trans.avail
使用该interplot
函数,我可以将条件Horsepower
视为price
the 的函数,EngineSize
但无需控制Man.trans.avail
结果绘制了 和 的边际效应线Horsepower
,EngineSize
但是,无法为不同的值绘制两条线,Man.trans.avail
我想知道您是否对如何在类似情况下绘制边际效应有一些想法。
非常感谢您的回复
r - 如何从交互项中提取边际效应?
我试图从一个交互式术语中提取边际效应,该术语捕获治疗 X(X 编码为 1 或 0)对结果 Y(Y 编码为 -10 到 10)的影响,由变量 A 调节(A 编码在 0 到 10 之间)。但是,我不确定如何从 A 的最高和最低度量的交互项中提取边际效应
总的来说,我设法使用 interplot 函数生成边际效应图:
此外,我尝试使用 ggpredict 在不同的 A 水平上提取具有 90% 置信区间的边际效应:
但是,使用 ggpredict 产生的边际系数与我在 m 的摘要中看到的不一致,并且与边际效应图不一致。相反,我得到的估计显然不准确或不精确。如何提取插值图中看到的边际效应?
r - 边际效应图与 R 中的发生率比率不对应
我试图在泊松回归中绘制特定变量的边际效应,然后将该图形与其相应的发生率比率相关联。
我的大部分情节都实现了这一点。然而,对于其中一个,发病率比率表示我感兴趣的变量的总体正相关,并且该图显示了明显的负相关。根据我的理解,这应该有问题。
你可以帮帮我吗 ?:) 我可能在我的分析中理解了一些错误......
我首先创建泊松模型:
我从中得到以下内部收益率
然后我绘制模型(x1)中第一个变量的边际效应,得到以下图:
这清楚地表明 x1 和 y 之间存在明显的负相关
先感谢您 !!
(我正在使用mfx包来计算 IRR 和sjPlot::plot_model用于绘图)
graph - 在一张图中绘制不同回归的边际效应
我probit
在不同的数据集上运行了五次相同的回归。
如何在同一张图上绘制每个回归的边际效应曲线,以便以简单的方式比较它们?
以下是我尝试过的代码:
这段代码的问题是,我获得的图表不是每个专业角色都有一条曲线,并且 x 轴上有年份虚拟变量,而是每个虚拟年份有一条线。