PDF version (NAG web site
, 64bit version, 64bit version)
NAG Toolbox Chapter Introduction
G10 — smoothing in statistics
Scope of the Chapter
This chapter is concerned with methods for smoothing data. Included are methods for density estimation, smoothing time series data, and statistical applications of splines. These methods may also be viewed as nonparametric modelling.
Background to the Problems
Smoothing Methods
Many of the methods used in statistics involve fitting a model, the form of which is determined by a small number of parameters, for example, a distribution model like the gamma distribution, a linear regression model or an autoregression model in time series. In these cases the fitting involves the estimation of the small number of parameters from the data. In modelling data with these models there are two important stages in addition to the estimation of the parameters; these are the identification of a suitable model, for example, the selection of a gamma distribution rather than a Weibull distribution, and the checking to see if the fitted model adequately fits the data. While these parametric models can be fairly flexible, they will not adequately fit all datasets, especially if the number of parameters is to be kept small.
Alternative models based on smoothing can be used. These models will not be written explicitly in terms of parameters. They are sufficiently flexible for a much wider range of situations than parametric models. The main requirement for such a model to be suitable is that the underlying models would be expected to be smooth, so excluding those situations where, for example, a step function would be expected.
These smoothing methods can be used in a variety of ways, for example:
1. 
producing smoothed plots to aid understanding; 
2. 
identifying of a suitable parametric model from the shape of the smoothed data; 
3. 
eliminating complex effects that are not of direct interest so that attention can be focused on the effects of interest. 
Several smoothing techniques make use of a smoothing parameter which can be either chosen by you or estimated from the data. The smoothing parameter balances the two criterion of smoothness of the fitted model and the closeness of the fit of the model to the data. Generally, the larger the smoothing parameter is, the smoother the fitted model will be, but for small values of the smoothing parameter the model will closely follow the data, and for large values the fit will be poorer.
The smoothing parameter can be either chosen using previous experience of a suitable value for such data, or estimated from the data. The estimation can be either formal, using a criterion such as the crossvalidation, or informal by trying different values and examining the result by means of suitable graphs.
Smoothing methods can be used in three important areas of of statistics: regression modelling, distribution modelling and time series modelling.
Smoothing Splines and Regression Models
For a set of $n$ observations (${y}_{i},{x}_{i}$), $i=1,2,\dots ,n$, the spline provides a flexible smooth function for situations in which a simple polynomial or nonlinear regression model is not suitable.
Cubic smoothing splines arise as the function,
$f$, with continuous first derivative which minimizes
where
${w}_{i}$ is the (optional) weight for the
$i$th observation and
$\rho $ is the smoothing parameter. This criterion consists of two parts: the first measures the fit of the curve and the second the smoothness of the curve. The value of the smoothing parameter,
$\rho $, weights these two aspects: larger values of
$\rho $ give a smoother fitted curve but, in general, a poorer fit.
Splines are linear smoothers since the fitted values,
$\hat{y}={\left({\hat{y}}_{1},{\hat{y}}_{2},\dots ,{\hat{y}}_{n}\right)}^{\mathrm{T}}$, can be written as a linear function of the observed values
$y={\left({y}_{1},{y}_{2},\dots ,{y}_{n}\right)}^{\mathrm{T}}$, that is,
for a matrix
$H$. The degrees of freedom for the spline is
$\mathrm{trace}\left(H\right)$ giving residual degrees of freedom
The diagonal elements of
$H$,
${h}_{ii}$, are the leverages.
The parameter
$\rho $ can be estimated in a number of ways.
1. 
The degrees of freedom for the spline can be specified, i.e., find $\rho $ such that $\mathrm{trace}\left(H\right)={\nu}_{0}$ for given ${\nu}_{0}$. 
2. 
Minimize the crossvalidation (CV), i.e., find $\rho $ such that the CV is minimized, where

3. 
Minimize generalized crossvalidation (GCV), i.e., find $\rho $ such that the GCV is minimized, where

Density Estimation
The object of density estimation is to produce from a set of observations a smooth nonparametric estimate of the unknown density function from which the observations were drawn. That is, given a sample of
$n$ observations,
${x}_{1}$,
${x}_{2},\dots ,{x}_{n}$, from a distribution with unknown density function,
$f\left(x\right)$, find an estimate of the density function,
$\hat{f}\left(x\right)$. The simplest form of density estimator is the histogram; this may be defined by
where
${n}_{j}$ is the number of observations falling in the interval
$a+\left(j1\right)h$ to
$a+jh$,
$a$ is the lower bound of the histogram and
$b={n}_{s}h$ is the upper bound. The value
$h$ is known as the window width. A simple development of this estimator would be the running histogram estimator
where
${n}_{x}$ is the number of observations falling in the interval
$\left[xh:x+h\right]$. This estimator can be written as
for a function
$w$ where
The function
$w$ can be considered as a kernel function. To produce a smoother density estimate, the kernel function,
$K\left(t\right)$, which satisfies the following conditions can be used:
The kernel density estimator is therefore defined as
The choice of
$K(\xb7)$ is usually not important, but to ease the computational burden use can be made of the Gaussian kernel defined as
The smoothness of the estimator,
$\hat{f}\left(x\right)$, depends on the window width,
$h$. In general, the larger the value
$h$ is, the smoother the resulting density estimate is. There is, however, the problem of oversmoothing when the value of
$h$ is too large and essential features of the distribution function are removed. For example, if the distribution was bimodal, a large value of
$h$ may result in a unimodal estimate. The value of
$h$ has to be chosen such that the essential shape of the distribution is retained while effects due only to the observed sample are smoothed out. The choice of
$h$ can be aided by looking at plots of the density estimate for different values of
$h$, or by using crossvalidation methods; see
Silverman (1990).
Silverman (1990) shows how the Gaussian kernel density estimator can be computed using a fast Fourier transform (FFT).
Smoothers for Time Series
If the data consists of a sequence of
$n$ observations recorded at equally spaced intervals, usually a time series, several robust smoothers are available. The fitted curve is intended to be robust to any outlying observations in the sequence, hence the techniques employed primarily make use of medians rather than means. These ideas come from the field of exploratory data analysis (EDA); see
Tukey (1977) and
Velleman and Hoaglin (1981). The smoothers are based on the use of running medians to summarise overlapping segments; these provide a simple but flexible curve.
In EDA terminology, the fitted curve and the residuals are called the smooth and the rough respectively, so that
Using the notation of Tukey, one of the smoothers commonly used is 4253H,twice. This consists of a running median of
$4$, then
$2$, then
$5$, then
$3$. This is then followed by what is known as hanning. Hanning is a running weighted mean, the weights being
$1/4$,
$1/2$ and
$1/4$. The result of this smoothing is then ‘reroughed’. This involves computing residuals from the computed fit, applying the same smoother to the residuals and adding the result to the smooth of the first pass.
Recommendations on Choice and Use of Available Functions
The following functions fit smoothing splines:
 nag_smooth_fit_spline (g10ab) computes a cubic smoothing spline for a given value of the smoothing parameter. The results returned include the values of leverages and the coefficients of the cubic spline. Options allow only parts of the computation to be performed when the function is used to estimate the value of the smoothing parameter or as when it is part of an iterative procedure such as that used in fitting generalized additive models; see Hastie and Tibshirani (1990).
 nag_smooth_fit_spline_parest (g10ac) estimates the value of the smoothing parameter using one of three criteria and fits the cubic smoothing spline using that value.
nag_smooth_fit_spline (g10ab) and
nag_smooth_fit_spline_parest (g10ac) require the
${x}_{i}$ to be strictly increasing. If two or more observations have the same
${x}_{i}$value then they should be replaced by a single observation with
${y}_{i}$ equal to the (weighted) mean of the
$y$ values and weight,
${w}_{i}$, equal to the sum of the weights. This operation can be performed by
nag_smooth_data_order (g10za).
The following function produces an estimate of the density function:
The following function produces a smoothed estimate for a time series:
The following service function is also available:
Functionality Index
Compute smoothed data sequence,   
Fit cubic smoothing spline,   
Kernel density estimation,   
References
Hastie T J and Tibshirani R J (1990) Generalized Additive Models Chapman and Hall
Silverman B W (1990) Density Estimation Chapman and Hall
Tukey J W (1977) Exploratory Data Analysis Addison–Wesley
Velleman P F and Hoaglin D C (1981) Applications, Basics, and Computing of Exploratory Data Analysis Duxbury Press, Boston, MA
PDF version (NAG web site
, 64bit version, 64bit version)
© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2015