Learn R Programming

spatstat (version 1.23-1)

Jmulti: Marked J Function

Description

For a marked point pattern, estimate the multitype $J$ function summarising dependence between the points in subset I and those in subset $J$.

Usage

Jmulti(X, I, J, eps=NULL, r=NULL, breaks=NULL, ..., disjoint=NULL,
         correction=NULL)

Arguments

X
The observed point pattern, from which an estimate of the multitype distance distribution function $J_{IJ}(r)$ will be computed. It must be a marked point pattern. See under Details.
I
Subset of points of X from which distances are measured.
J
Subset of points in X to which distances are measured.
eps
A positive number. The pixel resolution of the discrete approximation to Euclidean distance (see Jest). There is a sensible default.
r
numeric vector. The values of the argument $r$ at which the distribution function $J_{IJ}(r)$ should be evaluated. There is a sensible default. First-time users are strongly advised not to specify this argument. See below for important
breaks
An alternative to the argument r. Not normally invoked by the user. See the Details section.
...
Ignored.
disjoint
Optional flag indicating whether the subsets I and J are disjoint. If missing, this value will be computed by inspecting the vectors I and J.
correction
Optional. Character string specifying the edge correction(s) to be used. Options are "none", "rs", "km", "Hanisch" and "best".

Value

  • An object of class "fv" (see fv.object).

    Essentially a data frame containing six numeric columns

  • rthe values of the argument $r$ at which the function $J_{IJ}(r)$ has been estimated
  • rsthe ``reduced sample'' or ``border correction'' estimator of $J_{IJ}(r)$
  • kmthe spatial Kaplan-Meier estimator of $J_{IJ}(r)$
  • hanthe Hanisch-style estimator of $J_{IJ}(r)$
  • unthe uncorrected estimate of $J_{IJ}(r)$, formed by taking the ratio of uncorrected empirical estimators of $1 - G_{IJ}(r)$ and $1 - F_{J}(r)$, see Gdot and Fest.
  • theothe theoretical value of $J_{IJ}(r)$ for a marked Poisson process with the same estimated intensity, namely 1.

Details

The function Jmulti generalises Jest (for unmarked point patterns) and Jdot and Jcross (for multitype point patterns) to arbitrary marked point patterns.

Suppose $X_I$, $X_J$ are subsets, possibly overlapping, of a marked point process. Define $$J_{IJ}(r) = \frac{1 - G_{IJ}(r)}{1 - F_J(r)}$$ where $F_J(r)$ is the cumulative distribution function of the distance from a fixed location to the nearest point of $X_J$, and $G_{IJ}(r)$ is the distribution function of the distance from a typical point of $X_I$ to the nearest distinct point of $X_J$.

The argument X must be a point pattern (object of class "ppp") or any data that are acceptable to as.ppp.

The arguments I and J specify two subsets of the point pattern. They may be logical vectors of length equal to X$n, or integer vectors with entries in the range 1 to X$n, etc.

It is assumed that X can be treated as a realisation of a stationary (spatially homogeneous) random spatial point process in the plane, observed through a bounded window. The window (which is specified in X as X$window) may have arbitrary shape. Biases due to edge effects are treated in the same manner as in Jest.

The argument r is the vector of values for the distance $r$ at which $J_{IJ}(r)$ should be evaluated. It is also used to determine the breakpoints (in the sense of hist) for the computation of histograms of distances. The reduced-sample and Kaplan-Meier estimators are computed from histogram counts. In the case of the Kaplan-Meier estimator this introduces a discretisation error which is controlled by the fineness of the breakpoints.

First-time users would be strongly advised not to specify r. However, if it is specified, r must satisfy r[1] = 0, and max(r) must be larger than the radius of the largest disc contained in the window. Furthermore, the successive entries of r must be finely spaced.

References

Van Lieshout, M.N.M. and Baddeley, A.J. (1999) Indices of dependence between types in multivariate point patterns. Scandinavian Journal of Statistics 26, 511--532.

See Also

Jcross, Jdot, Jest

Examples

Run this code
data(longleaf)
     # Longleaf Pine data: marks represent diameter
    <testonly>longleaf <- longleaf[seq(1,longleaf$n, by=50), ]</testonly>
    Jm <- Jmulti(longleaf, longleaf$marks <= 15, longleaf$marks >= 25)
    plot(Jm)

Run the code above in your browser using DataLab