This is a generalisation of the function Kcross
to include an adjustment for spatially inhomogeneous intensity,
in a manner similar to the function Kinhom
. The inhomogeneous cross-type $K$ function is described by
Moller
and Waagepetersen (2003, pages 48-49 and 51-53).
Briefly, given a multitype point process, suppose the sub-process
of points of type $j$ has intensity function
$lambda[j](u)$ at spatial locations $u$.
Suppose we place a mass of $1/lambda[j](z)$
at each point $z$ of type $j$. Then the expected total
mass per unit area is 1. The
inhomogeneous ``cross-type'' $K$ function
$K[ij]inhom(r)$ equals the expected
total mass within a radius $r$ of a point of the process
of type $i$.
If the process of type $i$ points
were independent of the process of type $j$ points,
then $K[ij]inhom(r)$
would equal $pi * r^2$.
Deviations between the empirical $Kij$ curve
and the theoretical curve $pi * r^2$
suggest dependence between the points of types $i$ and $j$.
The argument 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
. (Warning: this means that
an integer value i=3
will be interpreted as the number 3,
not the 3rd smallest level).
If i
and j
are missing, they default to the first
and second level of the marks factor, respectively.
The argument lambdaI
supplies the values
of the intensity of the sub-process of points of type i
.
It may be either
- a pixel image
- (object of class
"im"
) which
gives the values of the type i
intensity
at all locations in the window containing X
;
a numeric vectorcontaining the values of the
type i
intensity evaluated only
at the data points of type i
. The length of this vector
must equal the number of type i
points in X
.
a function
which can be evaluated to give values of the intensity at
any locations.
a fitted point process model
(object of class "ppm"
, "kppm"
or "dppm"
)
whose fitted trend can be used as the fitted intensity.
(If update=TRUE
the model will first be refitted to the
data X
before the trend is computed.)
omitted:
if lambdaI
is omitted then it will be estimated
using a leave-one-out kernel smoother.
If lambdaI
is omitted, then it will be estimated using
a `leave-one-out' kernel smoother,
as described in Baddeley, \Moller
and Waagepetersen (2000). The estimate of lambdaI
for a given
point is computed by removing the point from the
point pattern, applying kernel smoothing to the remaining points using
density.ppp
, and evaluating the smoothed intensity
at the point in question. The smoothing kernel bandwidth is controlled
by the arguments sigma
and varcov
, which are passed to
density.ppp
along with any extra arguments.
Similarly lambdaJ
should contain
estimated values of the intensity of the sub-process of points of
type j
. It may be either a pixel image, a function,
a numeric vector, or omitted.
Alternatively if the argument lambdaX
is given, then it specifies
the intensity values for all points of X
, and the
arguments lambdaI
, lambdaJ
will be ignored.
The optional argument lambdaIJ
is for advanced use only.
It is a matrix containing estimated
values of the products of these two intensities for each pair of
data points of types i
and j
respectively.
The argument r
is the vector of values for the
distance $r$ at which $Kij(r)$ should be evaluated.
The values of $r$ must be increasing nonnegative numbers
and the maximum $r$ value must exceed the radius of the
largest disc contained in the window.
The argument correction
chooses the edge correction
as explained e.g. in Kest
.
The pair correlation function can also be applied to the
result of Kcross.inhom
; see pcf
.