tsybakov: The Tsybakov mode estimator

Description Usage Arguments Details Value Warning Note References See Also Examples

View source: R/tsybakov.R

Description

This mode estimator is based on a gradient-like recursive algorithm, more adapted for online estimation. It includes the Mizoguchi-Shimura (1976) mode estimator, based on the window training procedure.

Usage

1
2
3
4
5
6
7
8
9
tsybakov(
  x,
  bw = NULL,
  a,
  alpha = 0.9,
  kernel = "triangular",
  dmp = TRUE,
  par = shorth(x)
)

Arguments

x

numeric. Vector of observations.

bw

numeric. Vector of length length(x) giving the sequence of smoothing bandwidths to be used.

a

numeric. Vector of length length(x) used in the gradient algorithm

alpha

numeric. An alternative way of specifying a. See 'Details'.

kernel

character. The kernel to be used. Available kernels are "biweight", "cosine", "eddy", "epanechnikov", "gaussian", "optcosine", "rectangular", "triangular", "uniform". See density for more details on some of these kernels.

dmp

logical. If TRUE, Djeddour et al. version of the estimate is used.

par

numeric. Initial value in the gradient algorithm. Default value is shorth(x).

Details

If bw or a is missing, a default value advised by Djeddour et al (2003) is used: bw = (1:length(x))^(-1/7) and a = (1:length(x))^(-alpha). (with alpha = 0.9 if alpha is missing).

Value

A numeric value is returned, the mode estimate.

Warning

The Tsybakov mode estimate as it is presently computed does not work very well. The reasons of this inefficiency should be further investigated.

Note

The user may call tsybakov through mlv(x, method = "tsybakov", ...).

References

See Also

mlv for general mode estimation.

Examples

1
2
3
4
5
6
7
8
9
x <- rbeta(1000, shape1 = 2, shape2 = 5)

## True mode:
betaMode(shape1 = 2, shape2 = 5)

## Estimation:
tsybakov(x, kernel = "triangular")
tsybakov(x, kernel = "gaussian", alpha = 0.99)
mlv(x, method = "tsybakov", kernel = "gaussian", alpha = 0.99)

modeest documentation built on Nov. 18, 2019, 5:07 p.m.