Learn R Programming

sandwich (version 0.1-1)

vcovHC: Heteroskedasticity-Consistent Covariance Matrix Estimation

Description

Heteroskedasticity-consistent estimation of the covariance matrix of the coefficient estimates in a linear regression model.

Usage

vcovHC(x, order.by = NULL, data = list(),
  type = c("HC2", "const", "HC", "HC1", "HC3"))

Arguments

x
a fitted model object of class "lm".
order.by
formula. A formula with a single explanatory variable like ~ x. The observations in the model are ordered by the size of x. If set to NULL (the default) the observations are assumed to be ordered (e.g. a
data
an optional data frame containing the variables in the order.by model. By default the variables are taken from the environment which vcovHC is called from.
type
a character string specifying the estimation type. For details see below.

Value

  • A matrix containing the covariance matrix estimate.

Details

When type = "const" constant variances are assumed and and covHC gives the usual estimate of the covariance matrix of the coefficient estimates:

$$\hat \sigma^2 (X^\top X)^{-1}$$

All other methods do not assume constant variances and are suitable in case of heteroskedasticity. "HC" gives White's estimator; for details see the references.

References

MacKinnon J. G., White H. (1985), Some heteroskedasticity-consistent covariance matrix estimators with improved finite sample properties. Journal of Econometrics 29, 305-325

See Also

lm

Examples

Run this code
## generate linear regression relationship
## with homoskedastic variances
x <- sin(1:100)
y <- 1 + x + rnorm(100)
## compute usual covariance matrix of coefficient estimates
fm <- lm(y ~ x)
vcovHC(fm, type="const")
vcov(fm)

sigma2 <- sum(residuals(lm(y~x))^2)/98
sigma2 * solve(crossprod(cbind(1,x)))

Run the code above in your browser using DataLab