Learn R Programming

spatstat.core (version 2.3-1)

Emark: Diagnostics for random marking

Description

Estimate the summary functions \(E(r)\) and \(V(r)\) for a marked point pattern, proposed by Schlather et al (2004) as diagnostics for dependence between the points and the marks.

Usage

Emark(X, r=NULL,
         correction=c("isotropic", "Ripley", "translate"),
         method="density", …, normalise=FALSE)
Vmark(X, r=NULL,
         correction=c("isotropic", "Ripley", "translate"),
         method="density", …, normalise=FALSE)

Arguments

X

The observed point pattern. An object of class "ppp" or something acceptable to as.ppp. The pattern should have numeric marks.

r

Optional. Numeric vector. The values of the argument \(r\) at which the function \(E(r)\) or \(V(r)\) should be evaluated. There is a sensible default.

correction

A character vector containing any selection of the options "isotropic", "Ripley" or "translate". It specifies the edge correction(s) to be applied.

method

A character vector indicating the user's choice of density estimation technique to be used. Options are "density", "loess", "sm" and "smrep".

Arguments passed to the density estimation routine (density, loess or sm.density) selected by method.

normalise

IfTRUE, normalise the estimate of \(E(r)\) or \(V(r)\) so that it would have value equal to 1 if the marks are independent of the points.

Value

If marks(X) is a numeric vector, the result is an object of class "fv" (see fv.object). If marks(X) is a data frame, the result is a list of objects of class "fv", one for each column of marks.

An object of class "fv" is essentially a data frame containing numeric columns

r

the values of the argument \(r\) at which the function \(E(r)\) or \(V(r)\) has been estimated

theo

the theoretical, constant value of \(E(r)\) or \(V(r)\) when the marks attached to different points are independent

together with a column or columns named "iso" and/or "trans", according to the selected edge corrections. These columns contain estimates of the function E(r) or V(r) obtained by the edge corrections named.

Details

For a marked point process, Schlather et al (2004) defined the functions \(E(r)\) and \(V(r)\) to be the conditional mean and conditional variance of the mark attached to a typical random point, given that there exists another random point at a distance \(r\) away from it.

More formally, $$ E(r) = E_{0u}[M(0)] $$ and $$ V(r) = E_{0u}[(M(0)-E(u))^2] $$ where \(E_{0u}\) denotes the conditional expectation given that there are points of the process at the locations \(0\) and \(u\) separated by a distance \(r\), and where \(M(0)\) denotes the mark attached to the point \(0\).

These functions may serve as diagnostics for dependence between the points and the marks. If the points and marks are independent, then \(E(r)\) and \(V(r)\) should be constant (not depending on \(r\)). See Schlather et al (2004).

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

The argument r is the vector of values for the distance \(r\) at which \(k_f(r)\) is estimated.

This algorithm assumes 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 Window(X)) may have arbitrary shape.

Biases due to edge effects are treated in the same manner as in Kest. The edge corrections implemented here are

isotropic/Ripley

Ripley's isotropic correction (see Ripley, 1988; Ohser, 1983). This is implemented only for rectangular and polygonal windows (not for binary masks).

translate

Translation correction (Ohser, 1983). Implemented for all window geometries, but slow for complex windows.

Note that the estimator assumes the process is stationary (spatially homogeneous).

The numerator and denominator of the mark correlation function (in the expression above) are estimated using density estimation techniques. The user can choose between

"density"

which uses the standard kernel density estimation routine density, and works only for evenly-spaced r values;

"loess"

which uses the function loess in the package modreg;

"sm"

which uses the function sm.density in the package sm and is extremely slow;

"smrep"

which uses the function sm.density in the package sm and is relatively fast, but may require manual control of the smoothing parameter hmult.

References

Schlather, M. and Ribeiro, P. and Diggle, P. (2004) Detecting dependence between marks and locations of marked point processes. Journal of the Royal Statistical Society, series B 66 (2004) 79-83.

See Also

Mark correlation markcorr, mark variogram markvario for numeric marks.

Mark connection function markconnect and multitype K-functions Kcross, Kdot for factor-valued marks.

Examples

Run this code
# NOT RUN {
    plot(Emark(spruces))
    E <- Emark(spruces, method="density", kernel="epanechnikov")
    plot(Vmark(spruces))

    plot(Emark(finpines))
    V <- Vmark(finpines)
# }

Run the code above in your browser using DataLab