For a marked point pattern, estimate the multitype pair correlation function using kernel methods.
pcfmulti(X, I, J, ..., r = NULL,
kernel = "epanechnikov", bw = NULL, stoyan = 0.15,
correction = c("translate", "Ripley"),
divisor = c("r", "d"),
Iname = "points satisfying condition I",
Jname = "points satisfying condition J",
ratio = FALSE)
An object of class "fv"
.
The observed point pattern, from which an estimate of the cross-type pair correlation function \(g_{ij}(r)\) will be computed. It must be a multitype point pattern (a marked point pattern whose marks are a factor).
Subset index specifying the points of X
from which distances are measured.
Subset index specifying the points in X
to which
distances are measured.
Ignored.
Vector of values for the argument \(r\) at which \(g(r)\) should be evaluated. There is a sensible default.
Choice of smoothing kernel,
passed to density.default
.
Bandwidth for smoothing kernel,
passed to density.default
.
Coefficient for default bandwidth rule.
Choice of edge correction.
Choice of divisor in the estimation formula:
either "r"
(the default) or "d"
.
Optional. Character strings describing the members of
the subsets I
and J
.
Logical.
If TRUE
, the numerator and denominator of
each edge-corrected estimate will also be saved,
for use in analysing replicated point patterns.
Adrian Baddeley Adrian.Baddeley@curtin.edu.au
and Rolf Turner r.turner@auckland.ac.nz
This is a generalisation of pcfcross
to arbitrary collections of points.
The algorithm measures the distance from each data point
in subset I
to each data point in subset J
,
excluding identical pairs of points. The distances are
kernel-smoothed and renormalised to form a pair correlation
function.
If divisor="r"
(the default), then the multitype
counterpart of the standard
kernel estimator (Stoyan and Stoyan, 1994, pages 284--285)
is used. By default, the recommendations of Stoyan and Stoyan (1994)
are followed exactly.
If divisor="d"
then a modified estimator is used:
the contribution from
an interpoint distance \(d_{ij}\) to the
estimate of \(g(r)\) is divided by \(d_{ij}\)
instead of dividing by \(r\). This usually improves the
bias of the estimator when \(r\) is close to zero.
There is also a choice of spatial edge corrections
(which are needed to avoid bias due to edge effects
associated with the boundary of the spatial window):
correction="translate"
is the Ohser-Stoyan translation
correction, and correction="isotropic"
or "Ripley"
is Ripley's isotropic correction.
The arguments I
and J
specify two subsets of the
point pattern X
. They may be any type of subset indices, for example,
logical vectors of length equal to npoints(X)
,
or integer vectors with entries in the range 1 to
npoints(X)
, or negative integer vectors.
Alternatively, I
and J
may be functions
that will be applied to the point pattern X
to obtain
index vectors. If I
is a function, then evaluating
I(X)
should yield a valid subset index. This option
is useful when generating simulation envelopes using
envelope
.
The choice of smoothing kernel is controlled by the
argument kernel
which is passed to density
.
The default is the Epanechnikov kernel.
The bandwidth of the smoothing kernel can be controlled by the
argument bw
. Its precise interpretation
is explained in the documentation for density.default
.
For the Epanechnikov kernel with support \([-h,h]\),
the argument bw
is equivalent to \(h/\sqrt{5}\).
If bw
is not specified, the default bandwidth
is determined by Stoyan's rule of thumb (Stoyan and Stoyan, 1994, page
285) applied to the points of type j
. That is,
\(h = c/\sqrt{\lambda}\),
where \(\lambda\) is the (estimated) intensity of the
point process of type j
,
and \(c\) is a constant in the range from 0.1 to 0.2.
The argument stoyan
determines the value of \(c\).
pcfcross
,
pcfdot
,
pcf.ppp
.
adult <- (marks(longleaf) >= 30)
juvenile <- !adult
p <- pcfmulti(longleaf, adult, juvenile)
Run the code above in your browser using DataLab