| pcf {spatstat} | R Documentation |
Estimates the pair correlation function of a point pattern.
pcf(X, ..., method="c")
X |
Either the observed data point pattern, or an estimate of its K function, or an array of multitype K functions (see Details). |
... |
Arguments controlling the smoothing spline
function smooth.spline.
|
method |
Letter "a", "b" or "c" indicating the
method for deriving the pair correlation function from the
K function.
|
The pair correlation function of a stationary point process is
g(r) = K'(r)/ ( 2 * pi * r)
where K'(r) is the derivative of K(r), the
reduced second moment function (aka ``Ripley's K function'')
of the point process. See Kest for information
about K(r). For a stationary Poisson process, the
pair correlation function is identically equal to 1. Values
g(r) < 1 suggest inhibition between points;
values greater than 1 suggest clustering.
We also apply the same definition to
other variants of the classical K function,
such as the multitype K functions
(see Kcross, Kdot) and the
inhomogeneous K function (see Kinhom).
For all these variants, the benchmark value of
K(r) = pi * r^2 corresponds to
g(r) = 1.
This routine computes an estimate of g(r) from an estimate of K(r) or its variants, using smoothing splines to approximate the derivative.
The argument X may be either
"ppp",
or in a format recognised by as.ppp().
"fv",
see fv.object).
This object should be the value returned by
Kest, Kcross, Kmulti
or Kinhom.
"fasp",
see fasp.object)
containing several estimates of K functions.
This should have been obtained from alltypes
with the argument fun="K".
If X is a point pattern, the K function is
first estimated by Kest.
The smoothing spline operations are performed by
smooth.spline and predict.smooth.spline
from the modreg library.
Three numerical methods are available:
Method "c" seems to be the best at
suppressing variability for small values of r.
However it effectively constrains g(0) = 1.
If the point pattern seems to have inhibition at small distances,
you may wish to experiment with method "b" which effectively
constrains g(0)=0. Method "a" seems
comparatively unreliable.
Useful arguments to control the splines
include the smoothing tradeoff parameter spar
and the degrees of freedom df. See smooth.spline
for details.
Either a function value table
(object of class "fv", see fv.object)
representing a pair correlation function,
or a function array (object of class "fasp",
see fasp.object)
representing an array of pair correlation functions.
If X is an unmarked point pattern, the return value is
a function value table (class "fv"). It is
essentially a data frame containing (at least) the variables
r |
the vector of values of the argument r at which the pair correlation function g(r) has been estimated |
pcf |
vector of values of g(r) |
If code{X} is a function value table (class "fv") representing
the estimated K function of a point pattern
(obtained from Kest, Kinhom
or Kest.fft),
then the return value is again a function value table,
representing the pair correlation function.
If X is a multitype point pattern,
the return value is a function array (class "fasp").
This can be thought of as a matrix Y each of whose entries
Y[i,j] is a function value table (class "fv")
representing the pair correlation function between
points of type i and points of type j.
If X is a function array (class "fasp")
representing an array of estimated K functions
(obtained from alltypes),
the return value is another function array, containing
the corresponding pair correlation functions.
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
Stoyan, D, Kendall, W.S. and Mecke, J. (1995) Stochastic geometry and its applications. 2nd edition. Springer Verlag.
Stoyan, D. and Stoyan, H. (1994) Fractals, random shapes and point fields: methods of geometrical statistics. John Wiley and Sons.
Kest,
Kinhom,
Kcross,
Kdot,
Kmulti,
alltypes,
smooth.spline,
predict.smooth.spline
# univariate point pattern data(simdat) p <- pcf(simdat, spar=0.5, method="b") plot(p, main="pair correlation function for simdat") # indicates inhibition at distances r < 0.3 # multitype point pattern data(betacells) p <- pcf(alltypes(betacells, "K"), spar=0.5, method="b") plot(p) # short range inhibition between all types # strong inhibition between "on" and "off"