我希望进行一个F检验,以验证面板数据OLS回归中固定效应(个体特定虚拟变量)的联合显著性(在R中)。然而,我还没有找到一种方法来针对大量固定效应完成此操作。理想情况下,我想使用plm
软件包中的函数,但我没有找到任何具体执行此测试的内容。
当使用xtreg, fe
命令时,Stata会自动执行此操作。在Stata中,结果如下所示:
------------------------------------------------------------------------------
F test that all u_i=0: F(49, 498) = 12.00 Prob > F = 0.000
再次说明,我正在尝试在R中为大量虚拟变量复制Stata结果,可能是通过使用lm()
或model = "fe"
使用plm()
指定的+ factor(us.state)
.
这里有一个可复制的示例:
require(foreign)
voter <- read.dta("http://www.montana.edu/econ/cstoddard/562/panel_hw.dta")
reg1 <- lm(vaprate ~ gsp + midterm + regdead + WNCentral + South + Border
+ factor(state), data=voter)
这相当于使用plm
包进行以下“within”回归。
require(plm)
reg1.fe <- plm(vaprate ~ gsp + midterm + regdead + WNCentral + South + Border,
data=voter, index = c("state","year"), model = "within")
因此,测试将会是所有状态虚拟变量联合不等于零(联合显著性)的测试。这是对不受限制的模型(以上的reg1和reg1.fe)的线性限制。这个F检验更好地解释在以下文件中(见幻灯片5-7)。
这里是我创建一个F检验的“R”矩阵的若干尝试,零假设为:Rb = q,其中b是系数矩阵(beta hat),q是一个全零向量。
http://jackman.stanford.edu/classes/350B/07/ftestforWeb.pdf
d1 = length(unique(voter$stcode))-1
d2 = length(reg1$coefficients)
R = cbind(matrix(0,d1,d2),diag(d1))
linearHypothesis(reg1,R,rhs=0)
这行不通!我希望有一种简化的方法来测试所有固定效应虚拟变量的联合显著性。