bw.CvL.adaptive: Select Adaptive Bandwidth for Kernel Estimation Using...

View source: R/bw.CvL.adaptive.R

bw.CvL.adaptiveR Documentation

Select Adaptive Bandwidth for Kernel Estimation Using Cronie-Van Lieshout Criterion


Uses the Cronie-Van Lieshout criterion to select the global smoothing bandwidth for adaptive kernel estimation of point process intensity.


bw.CvL.adaptive(X, ..., 
            hrange = NULL, nh = 16, h=NULL,
            bwPilot = bw.scott.iso(X),
            edge = FALSE, diggle = TRUE)



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


Additional arguments passed to densityAdaptiveKernel.


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


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


Optional. Vector of values of the bandwidth to be searched. Overrides the values of nh and hrange.


Pilot bandwidth. A scalar value in the same units as the coordinates of X. The smoothing bandwidth for computing an initial estimate of intensity using density.ppp.


Logical value indicating whether to apply edge correction.


Logical. If TRUE, use the Jones-Diggle improved edge correction, which is more accurate but slower to compute than the default correction.


This function selects an appropriate value of global bandwidth h0 for adaptive kernel estimation of the intensity function for the point pattern X.

In adaptive estimation, each point in the point pattern is subjected to a different amount of smoothing, controlled by data-dependent or spatially-varying bandwidths. The global bandwidth h0 is a scale factor which is used to adjust all of the data-dependent bandwidths according to the Abramson (1982) square-root rule.

This function considers each candidate value of bandwidth h, performs the smoothing steps described above, extracts the adaptively-estimated intensity values \hat\lambda(x_i) at each data point x_i, and calculates the Cronie-Van Lieshout criterion

\mbox{CvL}(h) = \sum_{i=1}^n \frac 1 {\hat\lambda(x_i)}.

The value of h which minimises the squared difference

LP2(h) = (CvL(h) - |W|)^2

(where |W| is the area of the window of X) is selected as the optimal global bandwidth.

Bandwidths h are physical distance values expressed in the same units as the coordinates of X.


A single numerical value giving the selected global bandwidth. The result also belongs to the class "bw.optim" (see bw.optim.object) which can be plotted to show the bandwidth selection criterion as a function of sigma.


Marie-Colette Van Lieshout. Modified by \adrian.


Abramson, I. (1982) On bandwidth variation in kernel estimates — a square root law. Annals of Statistics, 10(4), 1217-1223.

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.

Van Lieshout, M.N.M. (2021) Infill asymptotics for adaptive kernel estimators of spatial intensity. Australian and New Zealand Journal of Statistics 63 (1) 159–181.

See Also


adaptive.density, densityAdaptiveKernel, bw.abram, density.ppp.

To select a fixed smoothing bandwidth using the Cronie-Van Lieshout criterion, use bw.CvL.


  online <- interactive()
  if(online) {
    h0 <- bw.CvL.adaptive(redwood3)
  } else {
    ## faster computation for package checker
    h0 <- bw.CvL.adaptive(redwood3, nh=8,
                          hrange=c(1/4, 4) * bw.diggle(redwood3))
  plot(as.fv(h0), CvL ~ h)
  if(online) {
    Z <- densityAdaptiveKernel(redwood3, h0)

spatstat.explore documentation built on May 29, 2024, 4:04 a.m.