Description Usage Arguments Details Author(s) References Examples
Estimate standard deviation of an unimodal signal with possible changes in mean
1 | estimateSd(y, method = c("Hall", "von Neumann"))
|
y |
A numeric vector |
method |
Method used to estimate standard deviation |
von Neumann's estimator is proportional to the mean absolute deviation
(mad
) of the first-order differences of the original signals:
mad(diff(y)
. By construction this estimator is robust to 1) changes
in the mean of the signal (through the use of differences) and 2) outliers
(through the use of mad
instead of mean
).
The proportionality constant 1/√ 2 \times 1/Φ^{-1}(3/4) ensures that the resulting estimator is consistent for the estimation of the standard deviation in the case of Gaussian signals.
Hall's estimator is a weigthed sum of squared elements of y. Let m=3. sigma^2 = (∑_{k=1}^{n-m}∑_{j=1}^{m+1}(\code{wei[i]}\code{y}[i+k])^2)/(n-m)
Morgane Pierre-Jean and Pierre Neuvial
Von Neumann, J., Kent, R. H., Bellinson, H. R., & Hart, B. T. (1941). The mean square successive difference. The Annals of Mathematical Statistics, 153-162.
Peter Hall, J. W. Kay and D. M. Titterington (1990). Asymptotically Optimal Difference-Based Estimation of Variance in Nonparametric Regression Biometrika,521-528
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | n <- 1e4
y <- rnorm(n) ## a signal with no change in mean
estimateSd(y)
estimateSd(y, method="von Neumann")
sd(y)
mad(y)
z <- y + rep(c(0,2), each=n/2) ## a signal with *a single* change in mean
estimateSd(z)
estimateSd(z, method="von Neumann")
sd(z)
mad(z)
z <- y + rep(c(0,2), each=100) ## a signal with many changes in mean
estimateSd(z)
estimateSd(z, method="von Neumann")
sd(z)
mad(z)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.