Robust estimation of the standard deviation of Gaussian data.
Usage
sdrobnorm(x, p = c(0.25, 0.75), lag = 1,
supressWarningNA = FALSE, supressWarningResultNA = FALSE)
Arguments
x
a vector of numerical observations. NA entries will be removed with a warning. The warning can be supressed by setting supressWarningNA to TRUE. Other non finite values are not allowed
p
vector of two distinct probabilities
lag
a single integer giving the lag of the difference used, see diff, if a numeric is passed a small tolerance will be added and the value will be converted by as.integer
supressWarningNA
a single logical, if TRUE no warning will be given for NA entries in x
supressWarningResultNA
a single logical, if TRUE no warning will be given if the result is NA
Value
Returns the estimate of the sample's standard deviation, i.e. a single non-negative numeric, NA if length(x) < lag + 2.
Details
Compares the difference between the estimated sample quantile corresponding to p after taking (lagged) differences) with the corresponding theoretical quantiles of Gaussian white noise to determine the standard deviation under a Gaussian assumption. If the data contain (few) jumps, this will (on average) be a slight overestimate of the true standard deviation.
This estimator has been inspired by (1.7) in (Davies and Kovac, 2001).
References
Davies, P. L., Kovac, A. (2001) Local extremes, runs, strings and multiresolution. The Annals of Statistics29, 1--65.