如何使用超过 5000 万个观测值的样本计算具有固定效应的 logit 模型的边际效应

     2023-03-29     292

关键词:

【中文标题】如何使用超过 5000 万个观测值的样本计算具有固定效应的 logit 模型的边际效应【英文标题】:How to calculate marginal effects of logit model with fixed effects by using a sample of more than 50 million observations 【发布时间】:2022-01-11 16:02:27 【问题描述】:

我有超过 5000 万个观测值的样本。我在 R 中估计以下模型:

model1 <- feglm(rejection~  variable1+ variable1^2 +  variable2+ variable3+ variable4 | city_fixed_effects + year_fixed_effects, family=binomial(link="logit"),  data=database)

根据模型 1 的估计,我计算边际效应:

mfx2 <- marginaleffects(model1)
summary(mfx2)

这行代码还计算了每一个减慢R的固定效应的边际效应。我只需要计算变量1、2和3的平均边际效应。如果我单独计算,使用mfx2计算边际效应

有解决这个问题的办法吗?

【问题讨论】:

【参考方案1】:

fixestmarginaleffects 软件包都是最近发布的 更改以提高互操作性。下一个官方 CRAN 发布 将能够做到这一点,但从 2021 年 12 月 8 日起,您可以使用 开发版本。安装:

library(remotes)
install_github("lrberge/fixest")
install_github("vincentarelbundock/marginaleffects")

我建议您先将固定效应变量转换为因子 拟合你的模型:

library(fixest)
library(marginaleffects)

dat <- mtcars
dat$gear <- as.factor(dat$gear)

mod <- feglm(am ~ mpg + mpg^2 + hp + hp^3| gear,
             family = binomial(link = "logit"),
             data = dat)

然后,您可以使用marginaleffectssummary 来计算平均值 边际效应:

mfx <- marginaleffects(mod, variables = "mpg")
summary(mfx)
## Average marginal effects 
##       type Term Effect Std. Error  z value Pr(>|z|)  2.5 % 97.5 %
## 1 response  mpg 0.3352         40 0.008381  0.99331 -78.06  78.73
## 
## Model type:  fixest 
## Prediction type:  response

请注意,计算平均边际效应需要计算 数据集的每一行都有明显的边际效应。这个可以 当您的数据包含数百万 观察。

相反,您可以计算特定值的边际效应 使用 newdata 参数和 typical 函数的回归器。 有关详细信息,请参阅marginaleffects 文档 那些:

marginaleffects(mod, 
                variables = "mpg", 
                newdata = typical(mpg = 22, gear = 4))
##   rowid     type term     dydx std.error       hp mpg gear predicted
## 1     1 response  mpg 1.068844   50.7849 146.6875  22    4 0.4167502

【讨论】:

在 R 中估计具有数百万个观测值和数千个变量的 OLS 模型

...【发布时间】:2019-04-0420:05:04【问题描述】:我正在尝试使用biglm估计具有约100万个观察值和约50,000个变量的大型OLS回归。我计划使用每个大约100个观察值的块来运行每个估计。我用一个小样本测试了这个策略 查看详情

如何在处理 r 中超过 500 万个观测值的数据框时加快迭代速度?

】如何在处理r中超过500万个观测值的数据框时加快迭代速度?【英文标题】:Howtospeedupiterationwhileworkingonadata-framewithover5millionobservationsinr?【发布时间】:2019-07-0612:32:53【问题描述】:我正在尝试为数百万个观察值中的7个以上变... 查看详情

rx相关性计算时缺失值的处理

...,数据量太小。因此,计算相关性时需要考虑到缺失值的使用。在R中的基础函数cor中有相当全面的缺失值处理方法。在使用cor(),可以指定x,y两个向量;也可以使用一个矩阵,计算所有样本两两之间的相关性。use参数可以设定缺... 查看详情

从 csv 文件生成随机样本,同时跳过具有某些值的行

...5000行的随机子样本。df包含两列:“JPG”和“NAME”。我使用以下代码生成了一个随机子样本:importpandasaspd 查看详情

是否可以导入包含超过 1,000,000 个观测值的 xpt 文件?

...一个xpt文件,其中包含超过1,400,000个观察值。但是,当我使用PROCCOPY将其导入SAS时,SAS中的数据集被截断为1,000,000个观察 查看详情

超过2组的R上的马氏距离

...集的马氏距离,这些观测值分为12个组(物种)。我知道如何比较两个矩阵,但我不明白如何从我的数据集(即12个物种之间)计算马氏距离。R文档给出了mahalanobis(x,center,cov,inverted= 查看详情

如何使用 jquery 或 javascript 计算具有特定值的行数?

】如何使用jquery或javascript计算具有特定值的行数?【英文标题】:Howtocountthenumbersofrowswithspecificvalueusingjqueryorjavascript?【发布时间】:2016-03-0914:25:01【问题描述】:我有一个表,其中包括2列,其中一列带有“给出价值”,另一列... 查看详情

如何删除数据框中具有超过 x 个 Null 值的行? [复制]

】如何删除数据框中具有超过x个Null值的行?[复制]【英文标题】:HowtoremoverowsinadataframewithmorethanxnumberofNullvalues?[duplicate]【发布时间】:2019-05-0603:58:36【问题描述】:我正在尝试删除数据框中具有超过7个空值的行。请提出一些有... 查看详情

第三章描述统计学ⅱ:数值方法

...啥必要描述众数了。百分位数(percentile):提供了数据如何散步在从最小值和最大值的区间上的信息。第p百分位数将数据分割为两部分,至少有p%的观测值小于或等于p百分位数,且至少有大约(100-p)%的观测值大于或等于p百分位... 查看详情

计算多个变量的一个均值和标准差

...准差;但是,找到所有观测值的均值和标准差并不简单。如何生成所有数据的均值和标准差?使用Excel,该表的均值和 查看详情

无法发布具有许多(超过 256 个)值的表单

...values【发布时间】:2015-05-0221:44:08【问题描述】:我正在使用带有Thymeleaf的SpringBoot1.2.2。我的问题是我尝试在表单中发布一长串项目(一些标签,一个复选框),这不能执行我列表中的这么多项目。(我测试了一些小列表,它确... 查看详情

计算R中列中NA的前后值的平均值

】计算R中列中NA的前后值的平均值【英文标题】:CalculatingaverageofpreceedingandfollowingvaluesforNAsinacolumninR【发布时间】:2022-01-1200:37:49【问题描述】:我有一个数据集,该数据集在某些样本中具有测量值,而在其他样本中保留NA。在... 查看详情

对于表中的每个观测值,根据纬度和经度 (R) 计算 x 米内的表中其他观测值的数量

】对于表中的每个观测值,根据纬度和经度(R)计算x米内的表中其他观测值的数量【英文标题】:Foreachobservationinatable,countnumberofotherobservationsintablewithinxmetresbasedonlatitudeandlongitude(R)【发布时间】:2020-06-1906:44:25【问题描述】:我有... 查看详情

linkedin是如何将hadoopyarn集群扩展到超过一万个节点的

在LinkedIn,我们使用Hadoop作为大数据分析和机器学习的基础组件。随着数据量呈指数级增长,并且公司在机器学习和数据科学方面进行了大量投资,我们的集群规模每年都在翻倍,以匹配计算工作负载的增长。我... 查看详情

linkedin是如何将hadoopyarn集群扩展到超过一万个节点的

在LinkedIn,我们使用Hadoop作为大数据分析和机器学习的基础组件。随着数据量呈指数级增长,并且公司在机器学习和数据科学方面进行了大量投资,我们的集群规模每年都在翻倍,以匹配计算工作负载的增长。我... 查看详情

在 REDIS 中管理超过百万个结果

...DIS【发布时间】:2020-05-0711:53:11【问题描述】:我刚开始使用REDIS,但我已经看到了一些限制,或者我不确定要使用什么。所以用例是我正在基于来自SQL的数据进行一些批处理计算,这些数据运行单独的线程/GAE实例,例如100k是... 查看详情

Angular2:如何使用具有某些组件值的 css calc()?

】Angular2:如何使用具有某些组件值的csscalc()?【英文标题】:Angular2:Howtousecsscalc()withsomecomponentvalue?【发布时间】:2018-01-0910:24:05【问题描述】:我想使用calcCSS函数根据组件值计算div高度。它给我的错误:TypeError:co.calc不是函数... 查看详情

如何有效地计算数百万个字符串之间的余弦相似度

】如何有效地计算数百万个字符串之间的余弦相似度【英文标题】:Howtoefficientlycomputethecosinesimilaritybetweenmillionsofstrings[closed]【发布时间】:2013-02-0902:26:48【问题描述】:我需要计算列表中字符串之间的余弦相似度。例如,我有... 查看详情