Test of serial correlation for (the idiosyncratic component of) the errors in panel models.
pbgtest(x, ...)# S3 method for panelmodel
pbgtest(x, order = NULL, type = c("Chisq", "F"),
...)
# S3 method for formula
pbgtest(x, order = NULL, type = c("Chisq", "F"),
data, model = c("pooling", "random", "within"), ...)
an object of class "panelmodel"
or of class "formula"
,
further arguments (see lmtest::bgtest()
).
an integer indicating the order of serial correlation
to be tested for. NULL
(default) uses the minimum number of
observations over the time dimension (see also section
Details below),
type of test statistic to be calculated; either
"Chisq"
(default) for the Chi-squared test statistic or "F"
for the F test statistic,
only relevant for formula interface: data set for which
the respective panel model (see model
) is to be evaluated,
only relevant for formula interface: compute test
statistic for model pooling
(default), random
, or within
.
When model
is used, the data
argument needs to be passed as
well,
An object of class "htest"
.
This Lagrange multiplier test uses the auxiliary model on
(quasi-)demeaned data taken from a model of class plm
which may
be a pooling
(default for formula interface), random
or
within
model. It performs a Breusch--Godfrey test (using bgtest
from package lmtest on the residuals of the
(quasi-)demeaned model, which should be serially uncorrelated under
the null of no serial correlation in idiosyncratic errors, as
illustrated in WOOL:10;textualplm. The function
takes the demeaned data, estimates the model and calls bgtest
.
Unlike most other tests for serial correlation in panels, this one allows to choose the order of correlation to test for.
BREU:78plm
GODF:78plm
WOOL:02plm
WOOL:10plm
WOOL:13plm Sec. 12.2, pp. 421--422.
For the original test in package lmtest see
lmtest::bgtest()
. See pdwtest()
for the analogous
panel Durbin--Watson test. See pbltest()
, pbsytest()
,
pwartest()
and pwfdtest()
for other serial correlation
tests for panel models.
# NOT RUN {
data("Grunfeld", package = "plm")
g <- plm(inv ~ value + capital, data = Grunfeld, model = "random")
# panelmodel interface
pbgtest(g)
pbgtest(g, order = 4)
# formula interface
pbgtest(inv ~ value + capital, data = Grunfeld, model = "random")
# F test statistic (instead of default type="Chisq")
pbgtest(g, type="F")
pbgtest(inv ~ value + capital, data = Grunfeld, model = "random", type = "F")
# }
Run the code above in your browser using DataLab