# vcovSCC

##### Driscoll and Kraay (1998) Robust Covariance Matrix Estimator

Nonparametric robust covariance matrix estimators *a la
Driscoll and Kraay* for panel models with cross-sectional
*and* serial correlation.

- Keywords
- regression

##### Usage

`vcovSCC(x, ...)`# S3 method for plm
vcovSCC(
x,
type = c("HC0", "sss", "HC1", "HC2", "HC3", "HC4"),
cluster = "time",
maxlag = NULL,
inner = c("cluster", "white", "diagavg"),
wj = function(j, maxlag) 1 - j/(maxlag + 1),
...
)

# S3 method for pcce
vcovSCC(
x,
type = c("HC0", "sss", "HC1", "HC2", "HC3", "HC4"),
cluster = "time",
maxlag = NULL,
inner = c("cluster", "white", "diagavg"),
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,- cluster
switch for vcovG; set at

`"time"`

here,- maxlag
either

`NULL`

or a positive integer specifying the maximum lag order before truncation- inner
the function to be applied to the residuals inside the sandwich:

`"cluster"`

for SCC,`"white"`

for Newey-West, (`"diagavg"`

for compatibility reasons)- wj
weighting function to be applied to lagged terms,

##### Details

`vcovSCC`

is a function for estimating a robust covariance matrix
of parameters for a panel model according to the
DRIS:KRAA:98;textualplm method, which is consistent
with cross--sectional and serial correlation in a T-asymptotic
setting and irrespective of the N dimension. The use with random
effects models is undocumented.

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 MACK:WHIT:85;textualplm and
CRIB:04;textualplm @see @ZEIL:04plm).

The main use of `vcovSCC`

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
@see @ZEIL:04, 4.1-2 and examples belowplm.

##### Value

An object of class `"matrix"`

containing the estimate of
the covariance matrix of coefficients.

##### References

CRIB:04plm

DRIS:KRAA:98plm

HOEC:07plm

MACK:WHIT:85plm

ZEIL:04plm

##### See Also

`sandwich::vcovHC()`

from the sandwich
package for weighting schemes (`type`

argument).

##### Examples

```
# NOT RUN {
library(lmtest)
library(car)
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)
## SCC robust significance test, default
coeftest(zz, vcov.=vcovSCC)
## idem with parameters, pass vcov as a function argument
coeftest(zz, vcov.=function(x) vcovSCC(x, type="HC1", maxlag=4))
## joint restriction test
waldtest(zz, update(zz, .~.-log(emp)-unemp), vcov=vcovSCC)
## test of hyp.: 2*log(pc)=log(emp)
linearHypothesis(zz, "2*log(pc)=log(emp)", vcov.=vcovSCC)
# }
```

*Documentation reproduced from package plm, version 2.2-5, License: GPL (>= 2)*