Kernel density estimation

Overview
In statistics, kernel density estimation (or Parzen window' method, named after Emanuel Parzen) is a way of estimating the probability density function of a random variable. As an illustration, given some data about a sample of a population, kernel density estimation makes it possible to extrapolate the data to the entire population.

Definition
If x1, x2, ..., xN ~ f is a IID sample of a random variable, then the kernel density approximation of its probability density function is


 * $$\widehat{f}_h(x)=\frac{1}{Nh}\sum_{i=1}^N K\left(\frac{x-x_i}{h}\right)$$

where K is some kernel and h is the bandwidth (smoothing parameter). Quite often K is taken to be a standard Gaussian function with mean zero and variance 1:


 * $$K(x) = {1 \over \sqrt{2\pi} }\,e^{-\frac{1}{2}x^2}.$$

Intuition
Although less smooth density estimators such as the histogram density estimator can be made to be asymptotically consistent, others are often either discontinuous or converge at slower rates than the kernel density estimator. Rather than grouping observations together in bins, the kernel density estimator can be thought to place small "bumps" at each observation, determined by the kernel function. The estimator consists of a "sum of bumps" and is clearly smoother as a result (see below image).

Properties
Let $$R(f,\hat f(x))$$ be the L2 risk function for f. Under weak assumptions on f and K,


 * $$R(f,\hat f(x)) \approx \frac{1}{4}\sigma_k^4h^4\int(f''(x))^2dx + \frac{\int K^2(x)dx}{nh}$$ where $$\sigma_K^2 = \int x^2K(x)dx$$.

By minimizing the theoretical risk function, it can be shown that the optimal bandwidth is
 * $$h^* = \frac{c_1^{-2/5}c_2^{1/5}c_3^{-1/5}}{n^{1/5}}$$

where
 * $$c_1 = \int x^2K(x)dx$$
 * $$c_2 = \int K(x)^2dx$$
 * $$c_3 = \int (f''(x))^2dx$$

When the optimal choice of bandwidth is chosen, the risk function is $$R(f, \hat f(x)) \approx \frac{c_4}{n^{4/5}}$$ for some constant c4 &gt; 0. It can be shown that, under weak assumptions, there cannot exist a non-parametric estimator that converges at a faster rate than the kernel estimator. Note that the n-4/5 rate is slower than the typical n-1 convergence rate of parametric methods.

Statistical implementation

 * In Stata, it is implemented through ; for example.
 * In R, it is implemented through the  function.