【问题标题】:How to recover constant / intercept from a model when using fixest / feols()?使用 fixst/feols() 时如何从模型中恢复常量/截距?
【发布时间】:2021-03-24 01:39:51
【问题描述】:

所以我有一个使用fixest 包中的feols() 估计的模型。我必须提取所有系数并将它们导出到不同的程序以计算其他观测值的预测值(不在 R 中)。为此,我使用了以下代码:

model.coef <- c(unlist(fixef(my_model)), coef(my_model))

然后我保存并导出了我的结果。但是,我注意到coef()fixef() 都没有提取模型的常数。我也知道必须有一个常数,因为我所有的因子变量都缺少一个(第一)级别,同样对于我的固定效应,每个变量都缺少一个级别。因此,我想知道是否有办法恢复这个常量的值。我尝试做类似的事情:

predict(my_model, newdata = data.frame(
   "var1" = 0, "var2" = 0,
   "factor1" = factor(0), ..., "result_var" = NA)
)

但是这太麻烦了,甚至不起作用!由于我收到以下错误:

  Error when creating the linear matrix: Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) : 
  contrasts can be applied only to factors with 2 or more levels

我想知道如何恢复模型的常数,到目前为止,我通过fixest 文档一无所获。

任何帮助将不胜感激。

【问题讨论】:

    标签: r data-modeling modeling


    【解决方案1】:

    我发现了问题,该模型没有常数,而我的固定效应比级别少的原因是因为其中一个总是在自变量中具有NA,从而产生省略了一个级别的错觉。这与我收到该错误的原因相同,因为我输入了模型中未包含的固定效果。我会留下这篇文章,以防将来有人遇到这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-27
      • 2018-03-30
      • 1970-01-01
      • 1970-01-01
      • 2014-02-23
      • 2018-09-25
      • 1970-01-01
      相关资源
      最近更新 更多