vcovDC | R Documentation |

High-level convenience wrapper for double-clustering robust
covariance matrix estimators *a la*
\insertCiteTHOM:11;textualplm and
\insertCiteCAME:GELB:MILL:11;textualplm for panel models.

```
vcovDC(x, ...)
## S3 method for class 'plm'
vcovDC(x, type = c("HC0", "sss", "HC1", "HC2", "HC3", "HC4"), ...)
```

`x` |
an object of class |

`...` |
further arguments |

`type` |
the weighting scheme used, one of |

`vcovDC`

is a function for estimating a robust covariance matrix of
parameters for a panel model with errors clustering along both dimensions.
The function is a convenience wrapper simply summing a group- and a
time-clustered covariance matrix and subtracting a diagonal one *a la*
White.

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 `vcovDC`

(and the other variance-covariance estimators
provided in the package `vcovHC`

, `vcovBK`

, `vcovNW`

, `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.

An object of class `"matrix"`

containing the estimate of
the covariance matrix of coefficients.

Giovanni Millo

CAME:GELB:MILL:11plm

\insertRefCRIB:04plm

\insertRefMACK:WHIT:85plm

\insertRefTHOM:11plm

\insertRefZEIL:04plm

`sandwich::vcovHC()`

from the sandwich
package for weighting schemes (`type`

argument).

```
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 = vcovDC)
summary(zz, vcov = function(x) vcovDC(x, type="HC1", maxlag=4))
## standard coefficient significance test
library(lmtest)
coeftest(zz)
## DC robust significance test, default
coeftest(zz, vcov.=vcovDC)
## idem with parameters, pass vcov as a function argument
coeftest(zz, vcov.=function(x) vcovDC(x, type="HC1", maxlag=4))
## joint restriction test
waldtest(zz, update(zz, .~.-log(emp)-unemp), vcov=vcovDC)
## Not run:
## test of hyp.: 2*log(pc)=log(emp)
library(car)
linearHypothesis(zz, "2*log(pc)=log(emp)", vcov.=vcovDC)
## End(Not run)
```

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.