# pcfcross

##### Multitype pair correlation function (cross-type)

Calculates an estimate of the cross-type pair correlation function for a multitype point pattern.

- Keywords
- spatial, nonparametric

##### Usage

```
pcfcross(X, i, j, ...,
r = NULL,
kernel = "epanechnikov", bw = NULL, stoyan = 0.15,
correction = c("isotropic", "Ripley", "translate"),
divisor = c("r", "d"))
```

##### Arguments

- X
- 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).
- i
- The type (mark value)
of the points in
`X`

from which distances are measured. A character string (or something that will be converted to a character string). Defaults to the first level of`marks(X)`

. - j
- The type (mark value)
of the points in
`X`

to which distances are measured. A character string (or something that will be converted to a character string). Defaults to the second level of`marks(X)`

. - ...
- Ignored.
- r
- Vector of values for the argument $r$ at which $g(r)$ should be evaluated. There is a sensible default.
- kernel
- Choice of smoothing kernel,
passed to
`density.default`

. - bw
- Bandwidth for smoothing kernel,
passed to
`density.default`

. - stoyan
- Coefficient for default bandwidth rule; see Details.
- correction
- Choice of edge correction.
- divisor
- Choice of divisor in the estimation formula:
either
`"r"`

(the default) or`"d"`

. See Details.

##### Details

The cross-type pair correlation function
is a generalisation of the pair correlation function `pcf`

to multitype point patterns.

For two locations $x$ and $y$ separated by a distance $r$,
the probability $p(r)$ of finding a point of type $i$ at location
$x$ and a point of type $j$ at location $y$ is
$$p(r) = \lambda_i \lambda_j g_{i,j}(r) \,{\rm d}x \, {\rm d}y$$
where $\lambda_i$ is the intensity of the points
of type $i$.
For a completely random Poisson marked point process,
$p(r) = \lambda_i \lambda_j$
so $g_{i,j}(r) = 1$.
Indeed for any marked point pattern in which the points of type `i`

are independent of the points of type `j`

,
the theoretical value of the cross-type pair correlation is
$g_{i,j}(r) = 1$.
For a stationary multitype point process, the cross-type pair correlation
function between marks $i$ and $j$ is formally defined as
$$g_{i,j}(r) = \frac{K_{i,j}^\prime(r)}{2\pi r}$$
where $K_{i,j}^\prime$ is the derivative of
the cross-type $K$ function $K_{i,j}(r)$.
of the point process. See `Kest`

for information
about $K(r)$.

The command `pcfcross`

computes a kernel estimate of
the cross-type pair correlation function between marks $i$ and
$j$.

- 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 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$.

The companion function `pcfdot`

computes the
corresponding analogue of `Kdot`

.

##### Value

- An object of class
`"fv"`

, see`fv.object`

, which can be plotted directly using`plot.fv`

.Essentially a data frame containing columns

r the vector of values of the argument $r$ at which the function $g_{i,j}$ has been estimated theo the theoretical value $g_{i,j}(r) = 1$ for independent marks. - together with columns named
`"border"`

,`"bord.modif"`

,`"iso"`

and/or`"trans"`

, according to the selected edge corrections. These columns contain estimates of the function $g_{i,j}$ obtained by the edge corrections named.

##### See Also

Mark connection function `markconnect`

.

Multitype pair correlation `pcfdot`

, `pcfmulti`

.
Pair correlation `pcf`

,`pcf.ppp`

.
`Kcross`

##### Examples

```
data(amacrine)
p <- pcfcross(amacrine, "off", "on")
p <- pcfcross(amacrine, "off", "on", stoyan=0.1)
plot(p)
```

*Documentation reproduced from package spatstat, version 1.37-0, License: GPL (>= 2)*