
The Lientz mode estimator is nothing but the value minimizing the empirical Lientz function. A 'plot' and a 'print' methods are provided.
lientz(x,
bw = NULL)
# S3 method for lientz
mlv(x,
bw = NULL,
abc = FALSE,
par = shorth(x),
optim.method = "BFGS",
...)
# S3 method for lientz
plot(x,
zoom = FALSE,
...)
# S3 method for lientz
print(x,
digits = NULL,
...)
numeric (vector of observations) or an object of class "lientz"
.
numeric. The smoothing bandwidth to be used. Should belong to (0, 1). Parameter 'beta' in Lientz (1970) function.
logical. If FALSE
(the default), the Lientz empirical function
is minimised using optim
.
numeric. The initial value used in optim
.
character. If abc = FALSE
, the method used in optim
.
logical. If TRUE
, one can zoom on the graph created.
numeric. Number of digits to be printed.
if abc = FALSE
, further arguments to be passed to optim
, or further arguments to be passed to plot.default
.
lientz
returns an object of class c("lientz", "function")
; this is a
function with additional attributes:
the x
argument
the bw
argument
the call which produced the result
The Lientz function is the smallest non-negative quantity bw
, such that
Lientz B.P. (1969). On estimating points of local maxima and minima of density functions. Nonparametric Techniques in Statistical Inference (ed. M.L. Puri, Cambridge University Press, p.275-282.
Lientz B.P. (1970). Results on nonparametric modal intervals. SIAM J. Appl. Math., 19:356-366.
Lientz B.P. (1972). Properties of modal intervals. SIAM J. Appl. Math., 23:1-5.
mlv
for general mode estimation;
shorth
for the shorth estimate of the mode
# NOT RUN {
# Unimodal distribution
x <- rbeta(1000,23,4)
## True mode
betaMode(23, 4)
## Lientz object
f <- lientz(x, 0.2)
print(f)
plot(f)
## Estimate of the mode
mlv(f) # optim(shorth(x), fn = f)
mlv(f, abc = TRUE) # x[which.min(f(x))]
M <- mlv(x, method = "lientz", bw = 0.2)
print(M)
plot(M)
# Bimodal distribution
x <- c(rnorm(1000,5,1), rnorm(1500, 22, 3))
f <- lientz(x, 0.1)
plot(f)
# }
Run the code above in your browser using DataLab