Learn R Programming

spatstat (version 1.31-3)

suffstat: Sufficient Statistic of Point Process Model

Description

The canonical sufficient statistic of a point process model is evaluated for a given point pattern.

Usage

suffstat(model, X=data.ppm(model))

Arguments

model
A fitted point process model (object of class "ppm").
X
A point pattern (object of class "ppp").

Value

  • A numeric vector of sufficient statistics. The entries correspond to the model coefficients coef(model).

Details

The canonical sufficient statistic of model is evaluated for the point pattern X. This computation is useful for various Monte Carlo methods. Here model should be a point process model (object of class "ppm", see ppm.object), typically obtained from the model-fitting function ppm. The argument X should be a point pattern (object of class "ppp").

Every point process model fitted by ppm has a probability density of the form $$f(x) = Z(\theta) \exp(\theta^T S(x))$$ where $x$ denotes a typical realisation (i.e. a point pattern), $\theta$ is the vector of model coefficients, $Z(\theta)$ is a normalising constant, and $S(x)$ is a function of the realisation $x$, called the ``canonical sufficient statistic'' of the model.

For example, the stationary Poisson process has canonical sufficient statistic $S(x)=n(x)$, the number of points in $x$. The stationary Strauss process with interaction range $r$ (and fitted with no edge correction) has canonical sufficient statistic $S(x)=(n(x),s(x))$ where $s(x)$ is the number of pairs of points in $x$ which are closer than a distance $r$ to each other.

suffstat(model, X) returns the value of $S(x)$, where $S$ is the canonical sufficient statistic associated with model, evaluated when $x$ is the given point pattern X. The result is a numeric vector, with entries which correspond to the entries of the coefficient vector coef(model).

The sufficient statistic $S$ does not depend on the fitted coefficients of the model. However it does depend on the irregular parameters which are fixed in the original call to ppm, for example, the interaction range r of the Strauss process.

The sufficient statistic also depends on the edge correction that was used to fit the model. For example in a Strauss process,

  • If the model is fitted withcorrection="none", the sufficient statistic is$S(x) = (n(x), s(x))$where$n(x)$is the number of points and$s(x)$is the number of pairs of points which are closer than$r$units apart.
  • If the model is fitted withcorrection="periodic", the sufficient statistic is the same as above, except that distances are measured in the periodic sense.
  • If the model is fitted withcorrection="translate", then$n(x)$is unchanged but$s(x)$is replaced by a weighted sum (the sum of the translation correction weights for all pairs of points which are closer than$r$units apart).
  • If the model is fitted withcorrection="border"(the default), then points lying less than$r$units from the boundary of the observation window are treated as fixed. Thus$n(x)$is replaced by the number$n_r(x)$of points lying at least$r$units from the boundary of the observation window, and$s(x)$is replaced by the number$s_r(x)$of pairs of points, which are closer than$r$units apart, and at least one of which lies more than$r$units from the boundary of the observation window.

Non-finite values of the sufficient statistic (NA or -Inf) may be returned if the point pattern X is not a possible realisation of the model (i.e. if X has zero probability of occurring under model for all values of the canonical coefficients $\theta$).

See Also

ppm

Examples

Run this code
fitS <- ppm(swedishpines, ~1, Strauss(7))
    X <- rpoispp(intensity(swedishpines), win=as.owin(swedishpines))
    suffstat(fitS, X)

Run the code above in your browser using DataLab