# Kcross

##### Multitype K Function (Cross-type)

For a multitype point pattern, estimate the multitype $K$ function which counts the expected number of points of type $j$ within a given distance of a point of type $i$.

- Keywords
- spatial, nonparametric

##### Usage

```
Kcross(X, i, j, r=NULL, breaks=NULL, correction,
..., ratio=FALSE, from, to )
```

##### Arguments

- X
- The observed point pattern, from which an estimate of the cross type $K$ function $K_{ij}(r)$ will be computed. It must be a multitype point pattern (a marked point pattern whose marks are a factor). See under Details.
- 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)`

. - r
- numeric vector. The values of the argument $r$ at which the distribution function $K_{ij}(r)$ should be evaluated. There is a sensible default. First-time users are strongly advised not to specify this argument. See below for important
- breaks
- This argument is for internal use only.
- correction
- A character vector containing any selection of the
options
`"border"`

,`"bord.modif"`

,`"isotropic"`

,`"Ripley"`

,`"translate"`

,`"translation"`

,`"none"`

or - ...
- Ignored.
- ratio
- Logical.
If
`TRUE`

, the numerator and denominator of each edge-corrected estimate will also be saved, for use in analysing replicated point patterns. - from,to
- An alternative way to specify
`i`

and`j`

respectively.

##### Details

This function `Kcross`

and its companions
`Kdot`

and `Kmulti`

are generalisations of the function `Kest`

to multitype point patterns.

A multitype point pattern is a spatial pattern of
points classified into a finite number of possible
``colours'' or ``types''. In the `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, and the mark vector
`X$marks`

must be a factor.

The arguments `i`

and `j`

will be interpreted as
levels of the factor `X$marks`

.
If `i`

and `j`

are missing, they default to the first
and second level of the marks factor, respectively.
The ``cross-type'' (type $i$ to type $j$)
$K$ function
of a stationary multitype point process $X$ is defined so that
$\lambda_j K_{ij}(r)$ equals the expected number of
additional random points of type $j$
within a distance $r$ of a
typical point of type $i$ in the process $X$.
Here $\lambda_j$
is the intensity of the type $j$ points,
i.e. the expected number of points of type $j$ per unit area.
The function $K_{ij}$ is determined by the
second order moment properties of $X$.

An estimate of $K_{ij}(r)$ is a useful summary statistic in exploratory data analysis of a multitype point pattern. If the process of type $i$ points were independent of the process of type $j$ points, then $K_{ij}(r)$ would equal $\pi r^2$. Deviations between the empirical $K_{ij}$ curve and the theoretical curve $\pi r^2$ may suggest dependence between the points of types $i$ and $j$.

This algorithm estimates the distribution function $K_{ij}(r)$
from the point pattern `X`

. It 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 in the same manner as in `Kest`

,
using the border correction.

The argument `r`

is the vector of values for the
distance $r$ at which $K_{ij}(r)$ should be evaluated.
The values of $r$ must be increasing nonnegative numbers
and the maximum $r$ value must not exceed the radius of the
largest disc contained in the window.

The pair correlation function can also be applied to the
result of `Kcross`

; see `pcf`

.

##### Value

- An object of class
`"fv"`

(see`fv.object`

).Essentially a data frame containing numeric columns

r the values of the argument $r$ at which the function $K_{ij}(r)$ has been estimated theo the theoretical value of $K_{ij}(r)$ for a marked Poisson process, namely $\pi r^2$ - together with a column or columns named
`"border"`

,`"bord.modif"`

,`"iso"`

and/or`"trans"`

, according to the selected edge corrections. These columns contain estimates of the function $K_{ij}(r)$ obtained by the edge corrections named.If

`ratio=TRUE`

then the return value also has two attributes called`"numerator"`

and`"denominator"`

which are`"fv"`

objects containing the numerators and denominators of each estimate of $K(r)$.

##### Warnings

The arguments `i`

and `j`

are always interpreted as
levels of the factor `X$marks`

. They are converted to character
strings if they are not already character strings.
The value `i=1`

does **not**
refer to the first level of the factor.

##### References

Cressie, N.A.C. *Statistics for spatial data*.
John Wiley and Sons, 1991.

Diggle, P.J. *Statistical analysis of spatial point patterns*.
Academic Press, 1983.

Harkness, R.D and Isham, V. (1983)
A bivariate spatial point pattern of ants' nests.
*Applied Statistics* **32**, 293--303
Lotwick, H. W. and Silverman, B. W. (1982).
Methods for analysing spatial processes of several types of points.
*J. Royal Statist. Soc. Ser. B* **44**, 406--413.

Ripley, B.D. *Statistical inference for spatial processes*.
Cambridge University Press, 1988.

Stoyan, D, Kendall, W.S. and Mecke, J.
*Stochastic geometry and its applications*.
2nd edition. Springer Verlag, 1995.

##### See Also

##### Examples

```
# amacrine cells data
K01 <- Kcross(amacrine, "off", "on")
plot(K01)
<testonly>K01 <- Kcross(amacrine, "off", "on", ratio=TRUE)</testonly>
K10 <- Kcross(amacrine, "on", "off")
# synthetic example: point pattern with marks 0 and 1
pp <- runifpoispp(50)
pp <- pp %mark% factor(sample(0:1, npoints(pp), replace=TRUE))
K <- Kcross(pp, "0", "1")
K <- Kcross(pp, 0, 1) # equivalent
```

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