vcovNW: Newey and West (1987) Robust Covariance Matrix Estimator

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/tool_vcovG.R

Description

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

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
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 is to be an argument to other functions, 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). Notice that the vcov and vcov. arguments allow to supply a function (which is the safest) or a matrix \insertCite@see @ZEIL:04, 4.1-2 and examples belowplm.

Value

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

Author(s)

Giovanni Millo

References

\insertRef

CRIB:04plm

\insertRef

DRIS:KRAA:98plm

\insertRef

MACK:WHIT:85plm

\insertRef

NEWE:WEST:87plm

\insertRef

ZEIL:04plm

See Also

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

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
library(lmtest)
data("Produc", package="plm")
zz <- plm(log(gsp)~log(pcap)+log(pc)+log(emp)+unemp, data=Produc, model="pooling")
## standard coefficient significance test
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 March 3, 2021, 1:12 a.m.