因此,我有一个使用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文档时没有找到任何东西。
任何帮助都将不胜感激。
发布于 2020-12-13 10:07:00
我发现了问题,模型没有常量,我的固定效果比级别小的原因是因为它们中的一个总是有一个独立变量的NA,给人一种忽略了一个级别的错觉。这就是为什么我会得到那个错误的原因,因为我输入了模型中没有包括的固定效果。我会留下这篇文章,以防将来其他人有这个问题。
https://stackoverflow.com/questions/65271683
复制相似问题