a kernel density estimate of one dimensional data by diffusion, the Gaussian kernel’s bandwidth chosen from the data
Syntax
bw, density, xmesh = kde1d(data)
The density on 2^14 points.
bw, density, xmesh = kde1d(data, 2 ** 10, lo, hi)
On 2^10 points of [lo, hi].
bw, density, xmesh = kde1d(data, weights=w, bandwidth=2.0) # weighted data, a bandwidth chosen
Description
The data are binned on n cells of [lo, hi] and the histogram is smoothed by the heat kernel, which is the Gaussian kernel of the bandwidth sqrt(t) (hi - lo). The time t is the fixed point of Botev, Grotowski and Kroese’s equation, which does not assume a parametric model and so does not deteriorate for multimodal data with widely separated modes. The density integrates to one over [lo, hi].
MATLAB’s kde1d takes the bandwidth option as the diffusion time t; here it is the bandwidth in the units of the data. MATLAB’s magicNumber, its fourth output, the cumulative distribution, and its plot when no output is asked are not ported.
Input
data |
array, the samples |
Keywords
| keyword | default | description |
|---|---|---|
n |
16384 |
the number of cells, rounded up to a power of two |
lo |
None |
the lower end of the interval; with hi, by default the range of the data widened by half of it on each side |
hi |
None |
the upper end of the interval |
weights |
None |
the weights of the samples |
bandwidth |
None |
the bandwidth of the kernel instead of the one chosen from the data |
Output
bw |
the bandwidth of the Gaussian kernel, in the units of the data |
density |
array of length n, the density estimate at the points of xmesh |
xmesh |
array of length n, the centres of the cells of [lo, hi] |
References
- Z. I. Botev, J. F. Grotowski, D. P. Kroese, Kernel density estimation via diffusion, Annals of Statistics 38 (2010) 2916-2957
See also
source
Citing this page.
This page is part of the documentation of
MTEX, a free and open
source MATLAB toolbox for analyzing and modeling crystallographic textures.
It was written by The MTEX Developers and is published at
https://mtex-toolbox.github.io/kde1d_py.html.
If you use MTEX, or reuse text or figures from this page, in your research,
please cite
F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63
BibTeX
@article{bachmann2010mtex,
author = {F. Bachmann and R. Hielscher and H. Schaeben},
title = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
journal = {Solid State Phenomena},
volume = {160},
pages = {63-68},
year = {2010},
doi = {10.4028/www.scientific.net/SSP.160.63},
url = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}
Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.