# vcovNW: Newey and West (1987) Robust Covariance Matrix Estimator In plm: Linear Models for Panel Data

 vcovNW R Documentation

## Newey and West (1987) Robust Covariance Matrix Estimator

### Description

Nonparametric robust covariance matrix estimators a la Newey and West for panel models with serial correlation.

### Usage

```vcovNW(x, ...)

## S3 method for class 'plm'
vcovNW(
x,
type = c("HC0", "sss", "HC1", "HC2", "HC3", "HC4"),
maxlag = NULL,
wj = function(j, maxlag) 1 - j/(maxlag + 1),
...
)

## S3 method for class 'pcce'
vcovNW(
x,
type = c("HC0", "sss", "HC1", "HC2", "HC3", "HC4"),
maxlag = NULL,
wj = function(j, maxlag) 1 - j/(maxlag + 1),
...
)
```

### Arguments

 `x` an object of class `"plm"` or `"pcce"` `...` further arguments `type` the weighting scheme used, one of `"HC0"`, `"sss"`, `"HC1"`, `"HC2"`, `"HC3"`, `"HC4"`, see Details, `maxlag` either `NULL` or a positive integer specifying the maximum lag order before truncation `wj` weighting function to be applied to lagged terms,

### Details

`vcovNW` is a function for estimating a robust covariance matrix of parameters for a panel model according to the \insertCiteNEWE:WEST:87;textualplm method. The function works as a restriction of the \insertCiteDRIS:KRAA:98;textualplm covariance (see `vcovSCC()`) to no cross–sectional correlation.

Weighting schemes specified by `type` are analogous to those in `sandwich::vcovHC()` in package sandwich and are justified theoretically (although in the context of the standard linear model) by \insertCiteMACK:WHIT:85;textualplm and \insertCiteCRIB:04;textualplm \insertCite@see @ZEIL:04plm.

The main use of `vcovNW` (and the other variance-covariance estimators provided in the package `vcovHC`, `vcovBK`, `vcovDC`, `vcovSCC`) is to pass it to plm's own functions like `summary`, `pwaldtest`, and `phtest` or together with testing functions from the `lmtest` and `car` packages. All of these typically allow passing the `vcov` or `vcov.` parameter either as a matrix or as a function, e.g., for Wald–type testing: argument `vcov.` to `coeftest()`, argument `vcov` to `waldtest()` and other methods in the lmtest package; and argument `vcov.` to `linearHypothesis()` in the car package (see the examples), see \insertCite@see also @ZEIL:04plm, 4.1-2, and examples below.

### Value

An object of class `"matrix"` containing the estimate of the covariance matrix of coefficients.

Giovanni Millo

### References

\insertRef

CRIB:04plm

\insertRef

DRIS:KRAA:98plm

\insertRef

MACK:WHIT:85plm

\insertRef

NEWE:WEST:87plm

\insertRef

ZEIL:04plm

`sandwich::vcovHC()` from the sandwich package for weighting schemes (`type` argument).

### Examples

```
data("Produc", package="plm")
zz <- plm(log(gsp)~log(pcap)+log(pc)+log(emp)+unemp, data=Produc, model="pooling")
## as function input to plm's summary method (with and without additional arguments):
summary(zz, vcov = vcovNW)
summary(zz, vcov = function(x) vcovNW(x, method="arellano", type="HC1"))
## standard coefficient significance test
library(lmtest)
coeftest(zz)
## NW robust significance test, default
coeftest(zz, vcov.=vcovNW)
## idem with parameters, pass vcov as a function argument
coeftest(zz, vcov.=function(x) vcovNW(x, type="HC1", maxlag=4))
## joint restriction test
waldtest(zz, update(zz, .~.-log(emp)-unemp), vcov=vcovNW)
## Not run:
## test of hyp.: 2*log(pc)=log(emp)
library(car)
linearHypothesis(zz, "2*log(pc)=log(emp)", vcov.=vcovNW)

## End(Not run)
```

plm documentation built on Aug. 16, 2022, 5:15 p.m.