Cross Validated Bandwidth Selection for Kernel Density

Uses cross-validation to select a smoothing bandwidth for the kernel estimation of point process intensity.

methods, smooth, spatial
bw.diggle(X, ..., correction="good", hmax=NULL)
A point pattern (object of class "ppp").
Character string passed to Kest determining the edge correction to be used to calculate the $K$ function.
Numeric. Maximum value of bandwidth that should be considered.

This function selects an appropriate bandwidth sigma for the kernel estimator of point process intensity computed by density.ppp.

The bandwidth $\sigma$ is chosen to minimise the mean-square error criterion defined by Diggle (1985). The algorithm computes the mean-square error by the method of Berman and Diggle (1989). See Diggle (2003, pages 115-118) for a summary of this method.

The result is a numerical value giving the selected bandwidth. The result also belongs to the class "bw.optim" which can be plotted to show the (rescaled) mean-square error as a function of sigma.


  • A numerical value giving the selected bandwidth. The result also belongs to the class "bw.optim" which can be plotted.

Definition of bandwidth

The smoothing parameter sigma returned by bw.diggle (and displayed on the horizontal axis of the plot) corresponds to h/2, where h is the smoothing parameter described in Diggle (2003, pages 116-118) and Berman and Diggle (1989). In those references, the smoothing kernel is the uniform density on the disc of radius h. In density.ppp, the smoothing kernel is the isotropic Gaussian density with standard deviation sigma. When replacing one kernel by another, the usual practice is to adjust the bandwidths so that the kernels have equal variance (cf. Diggle 2003, page 118). This implies that sigma = h/2.


Berman, M. and Diggle, P. (1989) Estimating weighted integrals of the second-order intensity of a spatial point process. Journal of the Royal Statistical Society, series B 51, 81--92.

Diggle, P.J. (1985) A kernel method for smoothing point process data. Applied Statistics (Journal of the Royal Statistical Society, Series C) 34 (1985) 138--147.

Diggle, P.J. (2003) Statistical analysis of spatial point patterns, Second edition. Arnold.

See Also

density.ppp, bw.ppl, bw.scott

  • bw.diggle
  b <- bw.diggle(hickory)
  plot(b, ylim=c(-2, 0), main="Cross validation for hickories")
  plot(density(hickory, b))
Documentation reproduced from package spatstat, version 1.41-1, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.