Heteroscedasticity and autocorrelation consistent (HAC) estimation of the covariance matrix of the coefficient estimates in a (generalized) linear regression model.

`vcovHAC(x, ...)`# S3 method for default
vcovHAC(x, order.by = NULL, prewhite = FALSE, weights = weightsAndrews,
adjust = TRUE, diagnostics = FALSE, sandwich = TRUE, ar.method = "ols",
data = list(), ...)

meatHAC(x, order.by = NULL, prewhite = FALSE, weights = weightsAndrews,
adjust = TRUE, diagnostics = FALSE, ar.method = "ols", data = list(), ...)

A matrix containing the covariance matrix estimate. If `diagnostics`

was set to `TRUE`

this has an attribute `"diagnostics"`

which is a list
with

- bias.correction
multiplicative bias correction

- df
Approximate denominator degrees of freedom

- x
a fitted model object.

- 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).- prewhite
logical or integer. Should the estimating functions be prewhitened? If

`TRUE`

or greater than 0 a VAR model of order`as.integer(prewhite)`

is fitted via`ar`

with method`"ols"`

and`demean = FALSE`

.- weights
Either a vector of weights for the autocovariances or a function to compute these weights based on

`x`

,`order.by`

,`prewhite`

,`ar.method`

and`data`

. If`weights`

is a function it has to take these arguments. See also details.- adjust
logical. Should a finite sample adjustment be made? This amounts to multiplication with \(n/(n-k)\) where \(n\) is the number of observations and \(k\) the number of estimated parameters.

- diagnostics
logical. Should additional model diagnostics be returned? See below for details.

- sandwich
logical. Should the sandwich estimator be computed? If set to

`FALSE`

only the meat matrix is returned.- ar.method
character. The

`method`

argument passed to`ar`

for prewhitening.- data
an optional data frame containing the variables in the

`order.by`

model. By default the variables are taken from the environment which`vcovHAC`

is called from.- ...
arguments passed to

`sandwich`

(in`vcovHAC`

) and`estfun`

(in`meatHAC`

), respectively.

The function `meatHAC`

is the real work horse for estimating
the meat of HAC sandwich estimators -- the default `vcovHAC`

method
is a wrapper calling
`sandwich`

and `bread`

. See Zeileis (2006) for
more implementation details. The theoretical background, exemplified
for the linear regression model, is described in Zeileis (2004).

Both functions construct weighted information sandwich variance estimators
for parametric models fitted to time series data. These are basically
constructed from weighted sums of autocovariances of the estimating functions
(as extracted by `estfun`

). The crucial step is the specification
of weights: the user can either supply `vcovHAC`

with some vector of
weights or with a function that computes these weights adaptively (based on
the arguments `x`

, `order.by`

, `prewhite`

and `data`

).
Two functions for adaptively choosing weights are implemented in
`weightsAndrews`

implementing the results of Andrews (1991) and
in `weightsLumley`

implementing the results of Lumley (1999).
The functions `kernHAC`

and `weave`

respectively
are to more convenient interfaces for `vcovHAC`

with these functions.

Prewhitening based on VAR approximations is described as suggested in Andrews & Monahan (1992).

The covariance matrix estimators have been improved by the addition of a bias correction and an approximate denominator degrees of freedom for test and confidence interval construction. See Lumley & Heagerty (1999) for details.

Andrews DWK (1991).
“Heteroskedasticity and Autocorrelation Consistent Covariance Matrix Estimation.”
*Econometrica*, **59**, 817--858.

Andrews DWK & Monahan JC (1992).
“An Improved Heteroskedasticity and Autocorrelation Consistent Covariance Matrix Estimator.”
*Econometrica*, **60**, 953--966.

Lumley T & Heagerty P (1999).
“Weighted Empirical Adaptive Variance Estimators for Correlated Data Regression.”
*Journal of the Royal Statistical Society B*, **61**, 459--477.

Newey WK & West KD (1987).
“A Simple, Positive Semi-Definite, Heteroskedasticity and Autocorrelation Consistent Covariance Matrix.”
*Econometrica*, **55**, 703--708.

Zeileis A (2004).
“Econometric Computing with HC and HAC Covariance Matrix Estimators.”
*Journal of Statistical Software*, **11**(10), 1--17.
tools:::Rd_expr_doi("10.18637/jss.v011.i10")

Zeileis A (2006).
“Object-Oriented Computation of Sandwich Estimators.”
*Journal of Statistical Software*, **16**(9), 1--16.
tools:::Rd_expr_doi("10.18637/jss.v016.i09")

`weightsLumley`

, `weightsAndrews`

,
`weave`

, `kernHAC`

```
x <- sin(1:100)
y <- 1 + x + rnorm(100)
fm <- lm(y ~ x)
vcovHAC(fm)
vcov(fm)
```

Run the code above in your browser using DataLab