Learn R Programming

spatstat (version 1.62-2)

markcrosscorr: Mark Cross-Correlation Function

Description

Given a spatial point pattern with several columns of marks, this function computes the mark correlation function between each pair of columns of marks.

Usage

markcrosscorr(X, r = NULL,
                correction = c("isotropic", "Ripley", "translate"),
                method = "density", …, normalise = TRUE, Xname = NULL)

Arguments

X

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

r

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

correction

A character vector containing any selection of the options "isotropic", "Ripley", "translate", "translation", "none" or "best". It specifies the edge correction(s) to be applied. Alternatively correction="all" selects all options.

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

If normalise=FALSE, compute only the numerator of the expression for the mark correlation.

Xname

Optional character string name for the dataset X.

Value

A function array (object of class "fasp") containing the mark cross-correlation functions for each possible pair of columns of marks.

Details

First, all columns of marks are converted to numerical values. A factor with \(m\) possible levels is converted to \(m\) columns of dummy (indicator) values.

Next, each pair of columns is considered, and the mark cross-correlation is defined as $$ k_{mm}(r) = \frac{E_{0u}[M_i(0) M_j(u)]}{E[M_i,M_j]} $$ 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\). On the numerator, \(M_i(0)\) and \(M_j(u)\) are the marks attached to locations \(0\) and \(u\) respectively in the \(i\)th and \(j\)th columns of marks respectively. On the denominator, \(M_i\) and \(M_j\) are independent random values drawn from the \(i\)th and \(j\)th columns of marks, respectively, and \(E\) is the usual expectation.

Note that \(k_{mm}(r)\) is not a ``correlation'' in the usual statistical sense. It can take any nonnegative real value. The value 1 suggests ``lack of correlation'': if the marks attached to the points of X are independent and identically distributed, then \(k_{mm}(r) \equiv 1\).

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.

The cross-correlations are estimated in the same manner as for markcorr.

See Also

markcorr

Examples

Run this code
# NOT RUN {
  # The dataset 'betacells' has two columns of marks:
  #       'type' (factor)
  #       'area' (numeric)
  if(interactive()) plot(betacells)
  plot(markcrosscorr(betacells))
# }

Run the code above in your browser using DataLab