Learn R Programming

lmtest (version 0.9-40)

bgtest: Breusch-Godfrey Test

Description

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

Usage

bgtest(formula, order = 1, order.by = NULL, type = c("Chisq", "F"),
  data = list(), fill = 0)

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.

order.by

Either a vector z or a formula with a single explanatory variable like ~ z. The observations in the model are ordered by the size of z. If set to NULL (the default) the observations are assumed to be ordered (e.g., a time series).

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.

fill

starting values for the lagged residuals in the auxiliary regression. By default 0 but can also be set to NA.

Value

A list with class "bgtest" inheriting from "htest" containing the following components:

statistic

the value of the test statistic.

p.value

the p-value of the test.

parameter

degrees of freedom.

method

a character string indicating what type of test was performed.

data.name

a character string giving the name(s) of the data.

coefficients

coefficient estimates from the auxiliary regression.

vcov

corresponding covariance matrix estimate.

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 a finite sample version of the test statistic, employing an \(F\) distribution with degrees of freedom as given in parameter.

By default, the starting values for the lagged residuals in the auxiliary regression are chosen to be 0 (as in Godfrey 1978) but could also be set to NA to omit them.

bgtest also returns the coefficients and estimated covariance matrix from the auxiliary regression that includes the lagged residuals. Hence, coeftest can be used to inspect the results. (Note, however, that standard theory does not always apply to the standard errors and t-statistics in this regression.)

References

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

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

Wooldridge, J.M. (2013): Introductory Econometrics: A Modern Approach, 5th edition, South-Western College.

See Also

dwtest

Examples

Run this code
# NOT RUN {
     ## 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)
     bg4 <- bgtest(y2 ~ x, order = 4)
     bg4
     coeftest(bg4)
# }

Run the code above in your browser using DataLab