大致解释一下吧——
如果在不同时期的个体是不同的(增加或减少),那么该面板数据就成为了非平衡面板。目前plm包中对于非平衡面板还不能进行双向效应估计,能提供的误差分量估计法也只有一种。Baltagi(2001)重新估计了房地产市场的特徽价格方程(hedonichousing prices function),代码如下:
data("Hedonic",package = "plm")
Hed <-plm(mv~crim + zn + indus + chas + nox + rm + age + dis + rad + tax + ptratio +blacks + lstat, Hedonic, model = "random", index ="townid")
summary(Hed)
根据各类检验——
可混合性检验(Tests of poolability)在进行面板数据分析前,一般会考虑到一个问题:对于每个个体,解释变量系数都是一样的吗?换言之,个体效应是否存在?当然,一般说来个体效应都会存在的,否则后面的分析就没有意义了,直接采用混合模型就好。可混合性检验就是用来检验个体效应的。我们这里需要调用pooltest()函数进行检验。最简单的调用方法如下:
data(Grunfeld, package="plm")pooltest(inv~value + capital, data = Grunfeld, model = "within")其实,该函数需要的由两部分组成,一为通过plm()得到的模型,二为通过pvcm()得到的固定效应模型。因此,上面的代码实则等价于:
znp <- pvcm(inv~value + capital, data = Grunfeld, model = "within") zplm <- plm(inv~value + capital, data = Grunfeld)pooltest(zplm, znp) 实际上,这里的pvcm()函数进行的正是变系数回归,而可混合性检验的实质也就是对这两种模型进行比较的F检验。
个体效应或时间效应检验(Tests for individualand time effects)用拉格朗格乘子法可以检验相对于混合模型的个体或时间效应。调用plmtest()函数。调用方式有两种,其一可以先做一个混合回归再进行检验(如双向效应):
g_pooled <- plm(inv~value + capital, data = Grunfeld, model = "pooling")plmtest(g_pooled, effect = "twoways", type = "ghm")此外也可以直接在调用检验函数的同时指定回归模型,如:
plmtest(inv~value + capital, data = Grunfeld, effect = "twoways", type = "ghm")对于该函数来说,还可以附加参数type,可选bp, honda, kw, ghm之一。至于必须指明的effect参数,可选individual, time,twoways之一。
此外,还可以做各种效应的F检验(基于混合模型与固定效应模型之间的比较):
g_fixed_twoways <- plm(inv~value + capital, data = Grunfeld, effect = "twoways", model = "within")pFtest(g_fixed_twoways, g_pooled)当然,pFtest()函数也提供了另外一种直接的调用形式,如pFtest(invvalue + capital, data = Grunfeld, effect = "twoways")。
Hausman检验为了判断到底是采用固定效应还是随机效应模型,我们一般采取经典的Hausman检验,这可以通过调用phtest()函数实现。注:这里我们只展示Hausman检验的用法,至于实际应用中该检验结果是否足以支撑模型选择,则需另作学术讨论。
gw <- plm(inv~value + capital, data = Grunfeld, model = "within")gr <- plm(inv~value + capital, data = Grunfeld, model = "random")phtest(gw, gr)
然后可以