mthreshC {CNLTreg} | R Documentation |

This function uses chi^2 statistics similar to Barber and Nason (2004) to threshold wavelet coefficients based on their magnitude

mthreshC(coeffv, Sigma, rl, po, ali, verbose = FALSE)

`coeffv` |
A matrix of complex-valued wavelet coefficients (columns are real and imaginary parts of the coefficients respectively). |

`Sigma` |
An array of dimension |

`rl` |
The removelist (trajectory of lifted points) corresponding to a forward lifting transform. |

`po` |
A vector of indices describing the unlifted scaling coefficients in a forward lifting transform. |

`ali` |
A list of indices of observations, each entry corresponding
to an 'artificial level' (finest to coarsest), see |

`verbose` |
Indicates whether helpful messages should be printed to the console during the procedure. |

The procedure in Downie and Silverman (1998) or Barber and Nason (2004) makes
use of the magnitude of wavelet coefficients to threshold them.
In particular, the covariance between the components of the
wavelet coefficients (contained in Sigma is taken into account
to compute a thresholding statistic, the distribution of which is
chi-squared_2 distributed, see `cthresh`

for more details. These
statistics are then compared with level-dependent universal
thresholds computed by counting the numnber of coefficients in
specific artificial levels.

A list with the following components:

`chi` |
the vector of chi-squared statistics used in the thresholding procedure. |

`coeffvt` |
the matrix of thresholded coefficients, columns representing the real and imaginary components respectively. |

Matt Nunes, Marina Knight

Hamilton, J., Knight, M. I., Nunes, M. A. and Fryzlewicz (2018)
Complex-valued wavelet lifting and applications. *Technometrics*, **60** (1), 48-60,DOI 10.1080/00401706.2017.1281846.
Barber, S. and Nason, G. P. (2004) Real nonparametric regression
using complex wavelets. *J. Roy. Stat. Soc. B* **66** (4), 927–939.
Downie, T. R. and Silverman, B. W. (1998) The discrete multiple
wavelet tranform and thresholding methods. *IEEE Trans. Sig.
Proc.* **46** 2558–2561.

`cthresh`

,
`denoisepermC`

,
`denoisepermCh`

library(adlift) set.seed(100) # construct an (irregular) sampling structure: x<-sort(runif(200)) g<-make.signal2("bumps",x=x) # generate IID noise with a particular sd noise<-rnorm(200,0,sd=0.5) f<-g+noise # perform forward complex lifting transform out<-fwtnppermC(x,f,LocalPred=LinearPred,neigh=1) # have a look at some of the coefficients out$coeffv[1:10] # extract lifting matrix and induced lifting variances W <- out$W Gpre<-tcrossprod(W,Conj(W)) indsd<-sqrt(diag(Gpre)) # now estimate noise sd using the first artificial level: al<-artlev(out$lengthsremove,out$removelist) fine<-(out$coeffv/indsd)[al[[1]]] varest<-mad(Re(fine))^2 # now compute coefficient covariance structure, see # Hamilton et al. (2018), Appendix B C = varest * tcrossprod(W) G = varest * Gpre P = Conj(G) - t(Conj(C)) Sigma <- array(0, dim = c(2, 2, length(out$coeffv))) Sigma[1, 1, ] <- diag(Re(G + C)/2) Sigma[2, 2, ] <- diag(Re(G - C)/2) Sigma[1, 2, ] <- -diag(Im(G - C)/2) Sigma[2, 1, ] <- diag(Im(G + C)/2) # now threshold complex coefficients according to this structure: coeff.thresh<-mthreshC(out$coeffv,Sigma,out$removelist,out$pointsin,al) # have a look at some of these coefficients coeff.thresh$coeffv[1:10]

[Package *CNLTreg* version 0.1-2 Index]