R 如何利用lfe软件包计算动态面板模型

R 如何利用lfe软件包计算动态面板模型,r,xts,plm,lfe,R,Xts,Plm,Lfe,我试图估计一个具有滞后和多组效应的大型动态固定效应面板数据模型 我从plm包中了解到pseries对象,它可以处理带有滞后的面板回归 library(plm) data("EmplUK", package = "plm") Em <- pdata.frame(EmplUK) plm(emp~output+capital + lag(wage, 1),data=Em,model="within") 库(plm) 数据(“EmplUK”,package=“plm”) Em到目前为止,在fel

我试图估计一个具有滞后和多组效应的大型动态固定效应面板数据模型

我从
plm
包中了解到
pseries
对象,它可以处理带有滞后的面板回归

library(plm)
data("EmplUK", package = "plm")
Em <- pdata.frame(EmplUK)
plm(emp~output+capital + lag(wage, 1),data=Em,model="within")
库(plm)
数据(“EmplUK”,package=“plm”)

Em到目前为止,在
felm
中没有直接的方法来进行滞后,但可以按如下方式进行:

library(lfe)
felm(emp~output+capital + lag(Em[,'wage'],1)|firm,data=Em)
使用
felm
时,滞后不能立即工作的原因是它将使用默认的滞后功能,而不是
pseries
滞后。如上所述指定时,将使用
pseries
lag

另一种方法是:

felm(emp~output+capital + lag(wage,1)|firm,data=as.data.frame(Em))
也就是说,包括一个显式的
as.data.frame
,这将
Em
转换为具有适当属性的
“data.frame”
。这将产生整个数据集的副本,但与plm在幕后所做的没有区别。

lfe的下一个版本(大约一个月后)将通过pseries直接支持这一点,前提是加载了plm。结果证明这是一个非常简单的解决方案。在创建模型框架的单个点上,我将“as.formula”替换为“as.formula”。然后保留“工资”类,并使用正确的lag()。当前版本的lfe(2.3)处理此问题,即
felm(emp~output+capital+lag(wage,1)| firm,data=Em)
将使用pseries lag。