# vcovHAC

##### Heteroskedasticity and Autocorrelation Consistent (HAC) Covariance Matrix Estimation

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

##### Usage

```
vcovHAC(x, order.by = NULL, prewhite = FALSE, weights = weightsAndrews,
diagnostics = FALSE, sandwich = TRUE, data = list())
```

##### Arguments

- x
- a fitted model object of class
`"lm"`

or`"glm"`

. - 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 assum - 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 = F`

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

,`order.by`

,`prewhite`

and`data`

. If`weights`

is a function it has to take these a - 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 middle matrix is returned. - 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.

##### Details

This function constructs weighted information sandwich variance estimators
for (generalized) linear models fitted to time series data. These are basically
constructed from weighted sums of autocovariances of the estimation 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.

##### Value

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

was set to`TRUE`

this has an attribute`"diagnostics} which is a list with item{bias.correction}{multiplicative bias correction} item{df}{Approximate denominator degrees of freedom} }`

references{ Andrews DWK (1991), Heteroskedasticity and Autocorrelation Consistent Covariance Matrix Estimation. emph{Econometrica}, bold{59}, 817--858.

Andrews DWK & Monahan JC (1992), An Improved Heteroskedasticity and Autocorrelation Consistent Covariance Matrix Estimatior. emph{Econometrica}, bold{60}, 953--966.

Lumley A & Heagerty P (1999), Weighted Empirical Adaptive Variance Estimators for Correlated Data Regression. emph{Journal of the Royal Statistical Society B}, bold{61}, 459--477.

Newey WK & West KD (1987), A Simple, Positive Semi-Definite, Heteroskedasticity and Autocorrelation Consistent Covariance Matrix. emph{Econometrica}, bold{55}, 703--708. }

seealso{code{weightsLumley}, code{weightsAndrews}, code{weave}, code{kernHAC}}

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

keyword{regression} keyword{ts}

*Documentation reproduced from package sandwich, version 0.1-1, License: GPL version 2*