denoise.poisson: denoise.poisson

denoise.poissonR Documentation

denoise.poisson

Description

Main routine of the package. Estimates the deterministic discretised intensity of a one-dimensional Poisson process using the Haar-Fisz transformation and partial cycle spinning.

Usage

denoise.poisson(y, meth.1 = hf.bt, cs.1 = 50, meth.2 = hf.cv, cs.2 = 50, hybrid = TRUE) 

Arguments

y

The vector of Poisson counts, its length must be a power of 2.

meth.1

Unquoted name of an S-Plus routine for denoising Gaussian contaminated vectors. Must take and return a vector of length 2^J where J is an integer. The following routines supplied in this package can be used here: hf.u, hf.cv, hf.bt, hf.tiu. The user can define and plug in his or her own routines here.

cs.1

The number of cycle spins to be performed with meth.1. Must be between 1 and N-1, where N is the length of y.

meth.2

Of the same type as meth.1.

cs.2

The number of cycle spins to be performed with meth.2.

hybrid

If set to TRUE, then the estimates are computed using both meth.1 with cs.1 cycle spins, and meth.2 with cs.2 cycle spins, and the final estimate is taken to be the average of these two. If set to FALSE, only meth.1 with cs.1 cycle spins is used to compute the final estimate.

Details

For a given input sequence, basic operation of the code performs a cyclic shift on the data. Then applies the Haar-Fisz transform, then one of the denoising methods (specified by meth.1), then the inverse Haar-Fisz transform and then a shift back. This is repeated for cs.1 cyclic shifts and the results of all shifts returned.

Value

Returns vector of the same length as the input y but is the denoised estimate.

Author(s)

Piotr Fryzlewicz

References

Fryzlewicz, P. and Nason, G.P. (2004) A Haar-Fisz algorithm for Poisson intensity estimation. Journal of Computational and Graphical Statistics, 13, 621-638. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1198/106186004X2697")}

See Also

hft, hft.inv, hf.u, hf.cv, hf.bt, hf.tiu

Examples

#
# Apply denoise.poisson to xquake data
#
data(xquake)
xquake.denoised <- denoise.poisson(xquake)
#
# Now plot the original data and it's denoised version in red
#
plot(xquake, type="l")
lines(xquake.denoised, col=2)

haarfisz documentation built on Sept. 1, 2023, 5:07 p.m.