Kres

0th

Percentile

Residual K Function

Given a point process model fitted to a point pattern dataset, this function computes the residual \(K\) function, which serves as a diagnostic for goodness-of-fit of the model.

Keywords
models, spatial
Usage
Kres(object, ...)
Arguments
object

Object to be analysed. Either a fitted point process model (object of class "ppm"), a point pattern (object of class "ppp"), a quadrature scheme (object of class "quad"), or the value returned by a previous call to Kcom.

Arguments passed to Kcom.

Details

This command provides a diagnostic for the goodness-of-fit of a point process model fitted to a point pattern dataset. It computes a residual version of the \(K\) function of the dataset, which should be approximately zero if the model is a good fit to the data.

In normal use, object is a fitted point process model or a point pattern. Then Kres first calls Kcom to compute both the nonparametric estimate of the \(K\) function and its model compensator. Then Kres computes the difference between them, which is the residual \(K\)-function.

Alternatively, object may be a function value table (object of class "fv") that was returned by a previous call to Kcom. Then Kres computes the residual from this object.

Value

A function value table (object of class "fv"), essentially a data frame of function values. There is a plot method for this class. See fv.object.

References

Baddeley, A., Rubak, E. and Moller, J. (2011) Score, pseudo-score and residual diagnostics for spatial point process models. Statistical Science 26, 613--646.

See Also

Related functions: Kcom, Kest.

Alternative functions: Gres, psstG, psstA, psst.

Point process models: ppm.

Aliases
  • Kres
Examples
# NOT RUN {
    data(cells)
    fit0 <- ppm(cells, ~1) # uniform Poisson
    
# }
# NOT RUN {
    K0 <- Kres(fit0)
    K0
    plot(K0)
# isotropic-correction estimate
    plot(K0, ires ~ r)
# uniform Poisson is clearly not correct

    fit1 <- ppm(cells, ~1, Strauss(0.08))
    
# }
# NOT RUN {
    K1 <- Kres(fit1)

    if(interactive()) {
      plot(K1, ires ~ r)
   # fit looks approximately OK; try adjusting interaction distance
      plot(Kres(cells, interaction=Strauss(0.12)))
    }

# How to make envelopes
    
# }
# NOT RUN {
    E <- envelope(fit1, Kres, model=fit1, nsim=19)
    plot(E)
    
# }
# NOT RUN {
# For computational efficiency
    Kc <- Kcom(fit1)
    K1 <- Kres(Kc)
# }
Documentation reproduced from package spatstat, version 1.59-0, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.