nncorr {spatstat}R Documentation

Nearest-Neighbour Correlation of Marked Point Pattern

Description

Computes the nearest-neighbour correlation of a marked point pattern.

Usage

     nncorr(X,
            f = function(m1, m2) { m1 * m2 },
            ...,
            use = "all.obs", method = c("pearson", "kendall", "spearman"))

Arguments

X The observed point pattern. An object of class "ppp".
f Function f used in the definition of the nearest neighbour correlation.
... Extra arguments passed to f.
use,method Arguments passed to the standard correlation function cor.

Details

The nearest neighbour correlation nbar of a marked point process X is a number measuring the dependence between the mark of a typical point and the mark of its nearest neighbour.

Three different values are computed: the unnormalised, normalised, and classical correlations.

The unnormalised nearest neighbour correlation (Stoyan and Stoyan, 1994, section 14.7) is defined as

nbar[f] = E[f(M, M*)]

where E[] denotes mean value, M is the mark attached to a typical point of the point process, and M* is the mark attached to its nearest neighbour (i.e. the nearest other point of the point process).

Here f is any function f(m1,m2) with two arguments which are possible marks of the pattern, and which returns a nonnegative real value. Common choices of f are: for continuous real-valued marks,

f(m1,m2)= m1 * m2

for discrete marks (multitype point patterns),

f(m1,m2)= (m1 == m2)

and for marks taking values in [0,2 * pi),

f(m1,m2) = sin(m1-m2).

For example, in the second case, the unnormalised nearest neighbour correlation nbar[f] equals the proportion of points in the pattern which have the same mark as their nearest neighbour.

Note that nbar[f] is not a ``correlation'' in the usual statistical sense. It can take values greater than 1.

We can define a normalised nearest neighbour correlation by

mbar[f] = E[f(M,M*)]/E[f(M,M')]

where again M is the mark attached to a typical point, M* is the mark attached to its nearest neighbour, and M' is an independent copy of M with the same distribution. This normalisation is also not a ``correlation'' in the usual statistical sense, but is normalised so that the value 1 suggests ``lack of correlation'': if the marks attached to the points of X are independent and identically distributed, then mbar[f] = 1. The interpretation of values larger or smaller than 1 depends on the choice of function f.

Finally if the marks of X are real numbers, we can also compute the classical correlation, that is, the correlation coefficient of the two random variables M and M*. The classical correlation has a value between -1 and 1. Values close to -1 or 1 indicate strong dependence between the marks.

This function computes the unnormalised and normalised nearest neighbour correlations, and the classical correlation if appropriate.

The argument X must be a point pattern (object of class "ppp") and must be a marked point pattern.

The argument f must be a function, accepting two arguments m1 and m2 which are vectors of equal length containing mark values (of the same type as the marks of X). It must return a vector of numeric values of the same length as m1 and m2. The values must be non-negative.

The arguments use and method control the calculation of the classical correlation using cor, as explained in the help file for cor.

Other arguments may be passed to f through the ... argument.

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 X$window) may have arbitrary shape. Biases due to edge effects are treated using the ‘border method’ edge correction.

Value

Labelled vector of length 2 or 3 containing the unnormalised and normalised nearest neighbour correlations, and the classical correlation if appropriate.

Author(s)

Adrian Baddeley adrian@maths.uwa.edu.au http://www.maths.uwa.edu.au/~adrian/ and Rolf Turner rolf@math.unb.ca http://www.math.unb.ca/~rolf

References

Stoyan, D. and Stoyan, H. (1994) Fractals, random shapes and point fields: methods of geometrical statistics. John Wiley and Sons.

Examples

  data(finpines)
  nncorr(finpines)
  # heights of neighbouring trees are slightly negatively correlated

  data(amacrine)
  nncorr(amacrine, function(m1, m2) { m1 == m2})
  # neighbouring cells are usually of different type

[Package spatstat version 1.11-3 Index]