Learn R Programming

spatstat (version 1.23-1)

MultiStrauss: The Multitype Strauss Point Process Model

Description

Creates an instance of the multitype Strauss point process model which can then be fitted to point pattern data.

Usage

MultiStrauss(types=NULL, radii)

Arguments

types
Optional; vector of all possible types (i.e. the possible levels of the marks variable in the data)
radii
Matrix of interaction radii

Value

  • An object of class "interact" describing the interpoint interaction structure of the multitype Strauss process with interaction radii $radii[i,j]$.

Warnings

In order that ppm can fit the multitype Strauss model correctly to a point pattern X, this pattern must be marked, with markformat equal to vector and the mark vector marks(X) must be a factor. If the argument types is specified it is interpreted as a set of factor levels and this set must equal levels(marks(X)).

Details

The (stationary) multitype Strauss process with $m$ types, with interaction radii $r_{ij}$ and parameters $\beta_j$ and $\gamma_{ij}$ is the pairwise interaction point process in which each point of type $j$ contributes a factor $\beta_j$ to the probability density of the point pattern, and a pair of points of types $i$ and $j$ closer than $r_{ij}$ units apart contributes a factor $\gamma_{ij}$ to the density.

The nonstationary multitype Strauss process is similar except that the contribution of each individual point $x_i$ is a function $\beta(x_i)$ of location and type, rather than a constant beta. The function ppm(), which fits point process models to point pattern data, requires an argument of class "interact" describing the interpoint interaction structure of the model to be fitted. The appropriate description of the multitype Strauss process pairwise interaction is yielded by the function MultiStrauss(). See the examples below.

The argument types need not be specified in normal use. It will be determined automatically from the point pattern data set to which the MultiStrauss interaction is applied, when the user calls ppm. However, the user should be confident that the ordering of types in the dataset corresponds to the ordering of rows and columns in the matrix radii.

The matrix radii must be symmetric, with entries which are either positive numbers or NA. A value of NA indicates that no interaction term should be included for this combination of types. Note that only the interaction radii are specified in MultiStrauss. The canonical parameters $\log(\beta_j)$ and $\log(\gamma_{ij})$ are estimated by ppm(), not fixed in MultiStrauss().

See Also

ppm, pairwise.family, ppm.object, Strauss, MultiHard

Examples

Run this code
r <- matrix(c(1,2,2,1), nrow=2,ncol=2)
   MultiStrauss(radii=r)
   # prints a sensible description of itself
   data(betacells)
   r <- 30.0 * matrix(c(1,2,2,1), nrow=2,ncol=2)
   ppm(betacells, ~1, MultiStrauss(, r))
   # fit the stationary multitype Strauss process to `betacells'
   # Note the comma; needed since "types" is not specified.

   ppm(betacells, ~polynom(x,y,3), MultiStrauss(c("off","on"), r))
   # fit a nonstationary Strauss process with log-cubic polynomial trend

Run the code above in your browser using DataLab