Fit Cluster or Cox Point Process Model

Fit a homogeneous or inhomogeneous cluster process or Cox point process model to a point pattern.

models, spatial
kppm(X, trend = ~1, clusters = "Thomas", covariates = NULL, ...,
       statistic="K", statargs=list())
Point pattern (object of class "ppp") to which the model should be fitted.
An Rformula, with no left hand side, specifying the form of the log intensity.
Character string determining the cluster model. Partially matched. Options are "Thomas", "MatClust", "Cauchy", "VarGamma" and "LGCP".
The values of any spatial covariates (other than the Cartesian coordinates) required by the model. A named list of pixel images, functions, windows or numeric constants.
Arguments passed to thomas.estK or thomas.estpcf or matclust.estK or
The choice of summary statistic: either "K" or "pcf".
Optional list of arguments to be used when calculating the summary statistic. See Details.

This function fits a Cox point process model to the point pattern dataset X. Cox models are suitable for spatially clustered point patterns.

The model may be either a Poisson cluster process or a Cox process. The type of model is determined by the argument clusters. Currently the options are clusters="Thomas" for the Thomas process, clusters="MatClust" for the Matern cluster process, clusters="Cauchy" for the Neyman-Scott cluster process with Cauchy kernel, clusters="VarGamma" for the Neyman-Scott cluster process with Variance Gamma kernel, and clusters="LGCP" for the log-Gaussian Cox process. The first four models are Poisson cluster processes. If the trend is constant (~1) then the model is homogeneous. The empirical $K$-function of the data is computed using Kest, and the parameters of the cluster model are estimated by the method of minimum contrast (matching the theoretical $K$-function of the model to the empirical $K$-function of the data, as explained in mincontrast).

Otherwise, the model is inhomogeneous. The algorithm first estimates the intensity function of the point process, by fitting a Poisson process with log intensity of the form specified by the formula trend. Then the inhomogeneous $K$ function is estimated by Kinhom using this fitted intensity. Finally the parameters of the cluster model are estimated by the method of minimum contrast using the inhomogeneous $K$ function. This two-step estimation procedure is due to Waagepetersen (2007). If statistic="pcf" then instead of using the $K$-function, the algorithm will use the pair correlation function pcf for homogeneous models and the inhomogeneous pair correlation function pcfinhom for inhomogeneous models. In this case, the smoothing parameters of the pair correlation can be controlled using the argument statargs, as shown in the Examples.


  • An object of class "kppm" representing the fitted model. There are methods for printing, plotting, predicting, simulating and updating objects of this class.


Jalilian, A., Guan, Y. and Waagepetersen, R. (2011) Decomposition of variance for spatial Cox processes. Manuscript submitted for publication.

Waagepetersen, R. (2007) An estimating function approach to inference for inhomogeneous Neyman-Scott processes. Biometrics 63, 252--258.

See Also

methods for kppm objects: plot.kppm, predict.kppm, simulate.kppm, update.kppm, vcov.kppm, methods.kppm, as.ppm.kppm, Kmodel.kppm, pcfmodel.kppm.

Fitting algorithms: thomas.estK, matclust.estK, lgcp.estK, cauchy.estK, vargamma.estK, thomas.estpcf, matclust.estpcf, lgcp.estpcf, cauchy.estpcf, vargamma.estpcf, mincontrast.

Summary statistics: Kest, Kinhom, pcf, pcfinhom.

See also ppm

  • kppm
  kppm(redwood, ~1, "Thomas")
  kppm(redwood, ~x, "MatClust") 
  kppm(redwood, ~x, "MatClust", statistic="pcf", statargs=list(stoyan=0.2)) 
  kppm(redwood, ~1, "LGCP", statistic="pcf")
  kppm(redwood, ~x, cluster="Cauchy", statistic="K")
  kppm(redwood, cluster="VarGamma", nu.ker = 0.5, statistic="pcf")
  if(require(RandomFields) && RandomFieldsSafe()) {
     kppm(redwood, ~x, "LGCP", statistic="pcf",
           covmodel=list(model="matern", nu=0.3))
Documentation reproduced from package spatstat, version 1.29-0, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.