Convenience function for computing the long-run variance (matrix) of a (possibly multivariate) series of observations.
lrvar(x, type = c("Andrews","Newey-West"), prewhite =TRUE, adjust =TRUE,...)
Arguments
x: numeric vector, matrix, or time series.
type: character specifying the type of estimator, i.e., whether kernHAC for the Andrews quadratic spectral kernel HAC estimator is used or NeweyWest for the Newey-West Bartlett HAC estimator.
prewhite: logical or integer. Should the series be prewhitened? Passed to kernHAC or NeweyWest.
adjust: logical. Should a finite sample adjustment be made? Passed to kernHAC or NeweyWest.
...: further arguments passed on to kernHAC or NeweyWest.
Details
lrvar is a simple wrapper function for computing the long-run variance (matrix) of a (possibly multivariate) series x. First, this simply fits a linear regression model x ~ 1 by lm. Second, the corresponding variance of the mean(s) is estimated either by kernHAC
(Andrews quadratic spectral kernel HAC estimator) or by NeweyWest
(Newey-West Bartlett HAC estimator).
Returns
For a univariate series x a scalar variance is computed. For a multivariate series x the covariance matrix is computed.
See Also
kernHAC, NeweyWest, vcovHAC
Examples
suppressWarnings(RNGversion("3.5.0"))set.seed(1)## iid series (with variance of mean 1/n)## and Andrews kernel HAC (with prewhitening)x <- rnorm(100)lrvar(x)## analogous multivariate case with Newey-West estimator (without prewhitening)y <- matrix(rnorm(200), ncol =2)lrvar(y, type ="Newey-West", prewhite =FALSE)## AR(1) series with autocorrelation 0.9z <- filter(rnorm(100),0.9, method ="recursive")lrvar(z)