Learn R Programming

gets (version 0.2)

isat: Indicator Saturation

Description

Beta Version 0.1: The isat function undertakes multi-path indicator saturation to detect outliers and mean-shifts using impulses (IIS), step-shifts (SIS), or both. Indicators are partitioned into blocks and selected over at a chosen level of significance (t.pval) using the getsm function.

Usage

isat(y, mc=TRUE, ar=NULL, ewma=NULL, mxreg=NULL, iis=TRUE, sis=FALSE,
  blocks=NULL, ratio.threshold=0.8, max.block.size=30,
  vcov.type=c("ordinary", "white"), t.pval=0.001, do.pet=FALSE,
  wald.pval=0.001, ar.LjungB=NULL, arch.LjungB=NULL, normality.JarqueB=NULL,
  info.method=c("sc", "aic", "hq"), include.gum=FALSE, include.empty=FALSE,
  tol=1e-07, LAPACK=FALSE, max.regs=NULL, verbose=TRUE, print.searchinfo=TRUE,
  alarm=FALSE, plot=TRUE)

Arguments

y
numeric vector, time-series or zoo object. Missing values in the beginning and at the end of the series is allowed, as they are removed with the na.trim command
mc
logical. TRUE (default) includes an intercept in the mean specification, whereas FALSE does not
ar
integer vector, say, c(2,4) or 1:4. The AR-lags to include in the mean specification
ewma
either NULL (default) or a list with arguments sent to the eqwma function. In the latter case a lagged moving average of y is included as a regressor
mxreg
numeric vector or matrix, say, a zoo object, of conditioning variables. Note that missing values in the beginning or at the end of the series is allowed, as they are removed with the
iis
logical. If TRUE, impulse indicator saturation is performed.
sis
logical. If TRUE, step indicator saturation is performed.
blocks
NULL (default) or the number of blocks. If NULL, then the number of blocks is determined automatically
ratio.threshold
Minimum ratio of variables in each block to total observations to determine the block size, default=0.8. Block size used is the maximum of given by either the ratio.threshold and max.block.size.
max.block.size
Maximum size of block of variables to be selected over, default=30. Block size used is the maximum of given by either the ratio.threshold and max.block.size.
vcov.type
the type of variance-covariance matrix used. If NULL (default), then the type used is that of the 'arx' object. This can be overridden by either "ordinary" (i.e. the ordinary variance-covariance matrix) or "white" (i.e. the White (1980) heteroscedasticity
t.pval
numeric value between 0 and 1. The significance level used for the two-sided regressor significance t-tests
do.pet
logical. If TRUE, then a Parsimonious Encompassing Test (PET) against the GUM is undertaken at each regressor removal for the joint significance of all the deleted regressors along the current path. If FALSE (default), then a PET is not undertaken at each
wald.pval
numeric value between 0 and 1. The significance level used for the Parsimonious Encompassing Tests (PETs)
ar.LjungB
a two-item list with names lag and pval, or NULL (default). In the former case lag contains the order of the Ljung and Box (1979) test for serial correlation in the standardised residuals, and pval conta
arch.LjungB
a two-item list with names lag and pval, or NULL (default). In the former case, lag contains the order of the Ljung and Box (1979) test for serial correlation in the squared standardised residuals, and pval
normality.JarqueB
a value between 0 and 1, or NULL. In the former case, a test for non-normality is conducted using a significance level equal to the numeric value. If NULL, then no test for non-normality is undertaken
info.method
character string, "sc" (default), "aic" or "hq", which determines the information criterion to be used when selecting among terminal models. The abbreviations are short for the Schwarz or Bayesian information criterion (sc), the Akaike information criteri
include.gum
logical. If TRUE, then the GUM (i.e. the starting model) is included among the terminal models. If FALSE (default), then the GUM is not included
include.empty
logical. If TRUE, then an empty model is included among the terminal models, if it passes the diagnostic tests, even if it is not equal to one of the terminals. If FALSE (default), then the empty model is not included (unless it is one of the terminals)
tol
numeric value (default = 1e-07). The tolerance for detecting linear dependencies in the columns of the regressors (see qr function). Only used if LAPACK is FALSE (default)
LAPACK
logical. If TRUE, then use LAPACK. If FALSE (default), then use LINPACK (see qr function)
max.regs
integer. The maximum number of regressions along a deletion path. It is not recommended that this is altered
verbose
logical. TRUE (default) returns (slightly) more output than FALSE
print.searchinfo
logical. If TRUE (default), then a print is returned whenever simiplification along a new path is started
plot
logical. If TRUE, then the fitted values and the residuals of the final model are plotted after model selection
alarm
logical. If TRUE, then a sound or beep is emitted (in order to alert the user) when the model selection ends

Value

  • A list of class 'gets'

Details

Multi-path indicator saturation using eiter impulses (IIS), step-shifts (SIS), or both. Indicators are partitioned into sequential blocks (as of beta version 0.1) where the block intervals are defined by the ratio of variables to observations in each block and a specified maximum block size. Indicators are selected over using the gets.m function. Retained indicators in each block are combined and re-selected over. Fixed covariates that are not selected over can be included in the regression model either in the mxreg matrix, or for auto-regressive terms through the ar specification. See Santos et al. (2007) and Doornik et al. (2013)

References

Carlos Santos, Hendry, David, F. and Johansen, Soren (2007): 'Automatic selection of indicators in a fully saturated regression'. Computational Statistics, vol 23:1, pp.317-335 Jurgen, A. Doornik, Hendry, David F., and Pretis, Felix (2013): 'Step Indicator Saturation', Oxford Economics Discussion Paper, 658.

See Also

Extraction functions for 'gets' objects: coef.gets, fitted.gets, paths, plot.gets, print.gets, residuals.gets, summary.gets, terminals, vcov.gets Related functions: arx, eqwma, leqwma, zoo

Examples

Run this code
##SIS using the Nile data
data(Nile)
isat(Nile, sis=TRUE, iis=FALSE, plot=TRUE, t.pval=0.005)

##SIS using the Nile data in an autoregressive model
isat(Nile, ar=1:2, sis=TRUE, iis=FALSE, plot=TRUE, t.pval=0.005)

##HP Data
##load Hoover and Perez (1999) data:
data(hpdata)

##make quarterly data-matrix of zoo type
##(GCQ = personal consumption expenditure):
y <- zooreg(hpdata$GCQ, 1959, frequency=4)

##transform data to log-differences:
dlogy <- diff(log(y))

##run isat with step impulse saturation on four
##lags and a constant 1 percent significance level:
isat(dlogy, ar=1:4, sis=TRUE, t.pval =0.01)

Run the code above in your browser using DataLab