meanshift( x, bw =NULL, kernel ="gaussian", par = shorth(x), iter =1000, tolerance = sqrt(.Machine$double.eps))
Arguments
x: numeric. Vector of observations.
bw: numeric. The smoothing bandwidth to be used.
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.
par: numeric. The initial value used in the meanshift algorithm.
iter: numeric. Maximal number of iterations.
tolerance: numeric. Stopping criteria.
Returns
meanshift returns a numeric value, the mode estimate, with an attribute "iterations". The number of iterations can be less than iter
if the stopping criteria specified by eps is reached.
Note
The user should preferentially call meanshift through mlv(x, method = "meanshift", ...).
Examples
# Unimodal distributionx <- rweibull(100, shape =12, scale =0.8)## True modeweibullMode(shape =12, scale =0.8)## Estimate of the modemlv(x, method ="meanshift", par = mean(x))
References
Fukunaga, K. and Hostetler, L. (1975). The estimation of the gradient of a density function, with applications in pattern recognition. IEEE Transactions on Information Theory, 21 (1):32--40.