R: denoiseheteromp

denoiseheteromp {adlift} | R Documentation

## denoiseheteromp

### Description

Denoises the multiple observation inputted signal using artificial levels noise variance estimation and bayesian thresholding, using heteroscedastic (estimated) noise variances.

### Usage

    denoiseheteromp(x, f, pred, neigh, int, clo, keep,
    rule = "median", mpdet="ave",returnall=FALSE)

### Arguments

`x` | A vector of grid values. Can be of any length, not necessarily equally spaced.
`f` | A vector of function values corresponding to x. Must be of the same length as x.
`pred` | The type of regression to be performed. Possible options are `LinearPred`, `QuadPred`, `CubicPred`, `AdaptPred` and `AdaptNeigh`.
`neigh` | The number of neighbours over which the regression is performed at each step. If clo is false, then this in fact denotes the number of neighbours on each side of the removed point.
`int` | Indicates whether or not the regression curve includes an intercept.
`clo` | Refers to the configuration of the chosen neighbours. If clo is false, the neighbours will be chosen symmetrically around the removed point. Otherwise, the closest neighbours will be chosen.
`keep` | The number of scaling coefficients to be kept in the final representation of the initial signal. This must be at least two.
`rule` | The type of bayesian thresholding used in the procedure. Possible values are "mean", "median" (posterior mean or median thresholding) or "hard or "soft" (hard or soft thresholding).
`mpdet` | how the mutiple point detail coefficients are computed. Possible values are "ave", in which the multiple detail coefficients produced when performing the multiple predictions are averaged, or "min", where the overall minimum detail coefficient is taken.
`returnall` | Indicates whether the function returns useful variables or just the denoised datapoints.

### Details

The function uses the transform matrix to normalise the detail coefficients produced from the forward transform, so that they can be used in the bayesian thresholding procedure EbayesThresh. The coefficients are divided into artificial levels, and the first (largest)level is used to estimate the noise variances of the coefficients, based on those coefficients falling in a sliding window around each gridpoint. EbayesThresh is then used to threshold the coefficients. The resulting new coefficients are then unnormalised and the transform inverted to obtain an estimate of the true (unnoisy) signal.

### Value

If returnall=FALSE, the estimate of the function after denoising. If returnall=TRUE, a list with components:

`fhat` | the estimate of the function after denoising.
`fhat1` | the estimate of the function after denoising, using the alternate variance estimate of MAD, centered at zero.
`fhat2` | the estimate of the function after denoising, using the alternate variance estimate of the median of the absolute values of the detail coefficients.
`indsd` | the individual coefficient variances introduced by the transform.
`al` | the artificial levels used to estimate the noise variance.
`sd` | the standard deviation of the noise.

### Author(s)

Matt Nunes (nunesrpackages@gmail.com), Marina Knight

### See Also

`denoisehetero`, `heterovar`

### Examples

    data(motorcycledata)
    #
    times<-motorcycledata$time
    accel<-motorcycledata$accel

    est1<-denoiseheteromp(times,accel,AdaptNeighmp,1,TRUE,TRUE,2,
    "median","ave")
    #
    #the estimate of the underlying curve.

[Package adlift version 1.4-1 Index]