Learn R Programming

spatstat.explore (version 3.1-0)

bw.CvL: Cronie and van Lieshout's Criterion for Bandwidth Selection for Kernel Density

Description

Uses Cronie and van Lieshout's criterion based on Cambell's formula to select a smoothing bandwidth for the kernel estimation of point process intensity.

Usage

bw.CvL(X, ..., srange = NULL, ns = 16, sigma = NULL, warn=TRUE)

Value

A numerical value giving the selected bandwidth. The result also belongs to the class "bw.optim"

which can be plotted.

Arguments

X

A point pattern (object of class "ppp").

...

Ignored.

srange

Optional numeric vector of length 2 giving the range of values of bandwidth to be searched.

ns

Optional integer giving the number of values of bandwidth to search.

sigma

Optional. Vector of values of the bandwidth to be searched. Overrides the values of ns and srange.

warn

Logical. If TRUE, a warning is issued if the optimal value of the cross-validation criterion occurs at one of the ends of the search interval.

Author

Ottmar Cronie ottmar@chalmers.se and Marie-Colette van Lieshout Marie-Colette.van.Lieshout@cwi.nl. Adapted for spatstat by Adrian Baddeley Adrian.Baddeley@curtin.edu.au, Rolf Turner r.turner@auckland.ac.nz and Ege Rubak rubak@math.aau.dk.

Details

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 discrepancy between the area of the observation window and the sum of reciprocal estimated intensity values at the points of the point process $$ \mbox{CvL}(\sigma) = (|W| - \sum_i 1/\hat\lambda(x_i))^2 $$ where the sum is taken over all the data points \(x_i\), and where \(\hat\lambda(x_i)\) is the kernel-smoothing estimate of the intensity at \(x_i\) with smoothing bandwidth \(\sigma\).

The value of \(\mbox{CvL}(\sigma)\) is computed directly, using density.ppp, for ns different values of \(\sigma\) between srange[1] and srange[2].

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 bandwidth selection criterion as a function of sigma.

References

Cronie, O and Van Lieshout, M N M (2018) A non-model-based approach to bandwidth selection for kernel estimators of spatial intensity functions, Biometrika, 105, 455-462.

See Also

density.ppp, bw.diggle, bw.scott, bw.ppl, bw.frac.

For adaptive smoothing bandwidths, use bw.CvL.adaptive.

Examples

Run this code
  if(interactive()) {
    b <- bw.CvL(redwood)
    b
    plot(b, main="Cronie and van Lieshout bandwidth criterion for redwoods")
    plot(density(redwood, b))
    plot(density(redwood, bw.CvL))
  }
  # \testonly{
    b <- bw.CvL(redwood, srange=c(0.03, 0.07), ns=2)
  # }

Run the code above in your browser using DataLab