Learn R Programming

spatstat (version 1.55-0)

predict.mppm: Prediction for Fitted Multiple Point Process Model

Description

Given a fitted multiple point process model obtained by mppm, evaluate the spatial trend and/or the conditional intensity of the model. By default, predictions are evaluated over a grid of locations, yielding pixel images of the trend and conditional intensity. Alternatively predictions may be evaluated at specified locations with specified values of the covariates.

Usage

# S3 method for mppm
predict(object, ..., newdata = NULL, type = c("trend", "cif"),
             ngrid = 40, locations=NULL, verbose=FALSE)

Arguments

object

The fitted model. An object of class "mppm" obtained from mppm.

Ignored.

newdata

New values of the covariates, for which the predictions should be computed. If newdata=NULL, predictions are computed for the original values of the covariates, to which the model was fitted. Otherwise newdata should be a hyperframe (see hyperframe) containing columns of covariates as required by the model. If type includes "cif", then newdata must also include a column of spatial point pattern responses, in order to compute the conditional intensity.

type

Type of predicted values required. A character string or vector of character strings. Options are "trend" for the spatial trend (first-order term) and "cif" or "lambda" for the conditional intensity. Alternatively type="all" selects all options.

ngrid

Dimensions of the grid of spatial locations at which prediction will be performed (if locations=NULL). An integer or a pair of integers.

locations

Optional. The locations at which predictions should be performed. A list of point patterns, with one entry for each row of newdata.

verbose

Logical flag indicating whether to print progress reports.

Value

A hyperframe with columns named trend and cif.

If locations=NULL, the entries of the hyperframe are pixel images.

If locations is not null, the entries are marked point patterns constructed by attaching the predicted values to the locations point patterns.

Details

This function computes the spatial trend and the conditional intensity of a fitted multiple spatial point process model. See Baddeley and Turner (2000) and Baddeley et al (2007) for explanation and examples.

Note that by ``spatial trend'' we mean the (exponentiated) first order potential and not the intensity of the process. [For example if we fit the stationary Strauss process with parameters \(\beta\) and \(\gamma\), then the spatial trend is constant and equal to \(\beta\).] The conditional intensity \(\lambda(u,X)\) of the fitted model is evaluated at each required spatial location u, with respect to the response point pattern X.

If locations=NULL, then predictions are performed at an ngrid by ngrid grid of locations in the window for each response point pattern. The result will be a hyperframe containing a column of images of the trend (if selected) and a column of images of the conditional intensity (if selected). The result can be plotted.

If locations is given, then it should be a list of point patterns (objects of class "ppp"). Predictions are performed at these points. The result is a hyperframe containing a column of marked point patterns where the locations each point.

References

Baddeley, A. and Turner, R. Practical maximum pseudolikelihood for spatial point patterns. Australian and New Zealand Journal of Statistics 42 (2000) 283--322.

Baddeley, A., Bischof, L., Sintorn, I.-M., Haggarty, S., Bell, M. and Turner, R. Analysis of a designed experiment where the response is a spatial point pattern. In preparation.

Baddeley, A., Rubak, E. and Turner, R. (2015) Spatial Point Patterns: Methodology and Applications with R. London: Chapman and Hall/CRC Press.

See Also

mppm, fitted.mppm, hyperframe

Examples

Run this code
# NOT RUN {
  h <- hyperframe(Bugs=waterstriders)
  fit <- mppm(Bugs ~ x, data=h, interaction=Strauss(7))
  # prediction on a grid
  p <- predict(fit)
  plot(p$trend)
  # prediction at specified locations
  loc <- with(h, runifpoint(20, Window(Bugs)))
  p2 <- predict(fit, locations=loc)
  plot(p2$trend)
# }

Run the code above in your browser using DataLab