Learn R Programming

lmtest (version 0.9-9)

bgtest: Breusch-Godfrey Test

Description

bgtest performs the Breusch-Godfrey test for higher order serial correlation.

Usage

bgtest(formula, order = 1, type = c("Chisq", "F"), data = list())

Arguments

formula
a symbolic description for the model to be tested (or a fitted "lm" object).
order
integer. maximal order of serial correlation to be tested.
type
the type of test statistic to be returned. Either "Chisq" for the Chi-squared test statistic or "F" for the F test statistic.
data
an optional data frame containing the variables in the model. By default the variables are taken from the environment which bgtest is called from.

Value

  • A list with class "htest" containing the following components:
  • statisticthe value of the test statistic.
  • p.valuethe p-value of the test.
  • parameterdegrees of freedom.
  • methoda character string indicating what type of test was performed.
  • data.namea character string giving the name(s) of the data.

Details

Under $H_0$ the test statistic is asymptotically Chi-squared with degrees of freedom as given in parameter. If type is set to "F" the function returns the exact F statistic which, under $H_0$, follows an $F$ distribution with degrees of freedom as given in parameter.

The starting values for the lagged residuals in the supplementary regression are chosen to be 0.

References

Johnston, J. (1984): Econometric Methods, Third Edition, McGraw Hill Inc.

Godfrey, L.G. (1978): `Testing Against General Autoregressive and Moving Average Error Models when the Regressors Include Lagged Dependent Variables', Econometrica, 46, 1293-1302.

Breusch, T.S. (1979): `Testing for Autocorrelation in Dynamic Linear Models', Australian Economic Papers, 17, 334-355.

See Also

dwtest

Examples

Run this code
## Generate a stationary and an AR(1) series
     x <- rep(c(1, -1), 50)

     y1 <- 1 + x + rnorm(100)

     ## Perform Breusch-Godfrey test for first order serial correlation:
     bgtest(y1 ~ x)
     ## or for fourth order serial correlation
     bgtest(y1 ~ x, order = 4)
     ## Compare with Durbin-Watson test results:
     dwtest(y1 ~ x)

     y2 <- filter(y1, 0.5, method = "recursive")
     bgtest(y2 ~ x)

Run the code above in your browser using DataLab