为什么clogit和bife函数(都在R中)的结果不同



我喜欢计算R中的逻辑固定效应面板回归(条件最大似然(,并获得预测值和/或平均边际效应。

我从的生存包中找到了两个功能:bife和clogit

尽管如此,函数的结果不同,我想知道为什么以及如何修复它。clogit函数给我的结果与Stata(xtlogit,fe(中的结果相同,但我没有找到从中获得平均边际/部分效果的方法(解释如何这样做也能解决我的问题(。在bife中,结果与Stata中的clogit和xtlogit不同,可以选择计算PME(getAPE(。

clogit:

clogit_output <- clogit(binary_variable~ x1 + x2 + x3 + strata(id), data = data) 

biffe:

bife_output <- bife(binary_variable ~ x1 + x2 + x3 | id, data = data, model = c("logit"))

我的结果是二进制的(0或1(,预测因子是伪变量和数字。我有一个不平衡的小组,12年来有10000名受访者。我用申报了面板结构

data<- pdata.frame(data, index = c("id", "wave"))

clogit的结果是:

summary(clogit_output) 
coef exp(coef)  se(coef)       z Pr(>|z|)
X1 -0.173637  0.840602  0.103450  -1.678  0.09326
X2 -0.467696  0.626444  0.115345  -4.055 5.02e-05
X3 0.743621  2.103538  0.035638  20.866  < 2e-16

对于bife:

summary (bife_output)
Estimate Std. error z value Pr(> |z|) 
X1 -0.2135333  0.1140698  -1.872   0.06121
X2 -0.5624223  0.1268271  -4.435  9.23e-06
X3 0.9150707  0.0399252  22.920   < 2e-16

到目前为止,我认为通过在bife(bias_corr(bife_output((中使用纠错,我会得到与STATA或clogit相同的结果。然而,在我的情况下,纠错给出了错误:步骤减半失败。

clogitbife结果的差异用附带参数问题来解释。

正如你自己已经发现的,bife::bias_corr(bife_output)纠正了这种偏见。您也可以使用summary(bife::bias_corr(bife_output))来获取标准错误。

另请参阅我对Stack Overflow这个新问题的更详细的回答。

相关内容

  • 没有找到相关文章