markconnect
Mark Connection Function
Estimate the marked connection function of a multitype point pattern.
- Keywords
- spatial, nonparametric
Usage
markconnect(X, i, j, r=NULL,
correction=c("isotropic", "Ripley", "translate"),
method="density", ..., normalise=FALSE)
Arguments
- X
- The observed point pattern.
An object of class
"ppp"
or something acceptable toas.ppp
. - i
- Number or character string identifying the type (mark value)
of the points in
X
from which distances are measured. - j
- Number or character string identifying the type (mark value)
of the points in
X
to which distances are measured. - r
- numeric vector. The values of the argument $r$ at which the mark connection function $p_{ij}(r)$ should be evaluated. There is a sensible default.
- correction
- A character vector containing any selection of the
options
"isotropic"
,"Ripley"
or"translate"
. It specifies the edge correction(s) to be applied. - method
- A character vector indicating the user's choice of
density estimation technique to be used. Options are
"density"
,"loess"
,"sm"
and"smrep"
. - ...
- Arguments passed to the density estimation routine
(
density
,loess
orsm.density
) selected bymethod
. - normalise
- If
TRUE
, normalise the pair connection function by dividing it by $p_i p_j$, the estimated probability that randomly-selected points will have marks $i$ and $j$.
Details
The mark connection function $p_{ij}(r)$ of a multitype point process $X$ is a measure of the dependence between the types of two points of the process a distance $r$ apart.
Informally $p_{ij}(r)$ is defined as the conditional probability, given that there is a point of the process at a location $u$ and another point of the process at a location $v$ separated by a distance $||u-v|| = r$, that the first point is of type $i$ and the second point is of type $j$. See Stoyan and Stoyan (1994).
If the marks attached to the points of X
are independent
and identically distributed, then
$p_{ij}(r) \equiv p_i p_j$ where
$p_i$ denotes the probability that a point is of type
$i$. Values larger than this,
$p_{ij}(r) > p_i p_j$,
indicate positive association between the two types,
while smaller values indicate negative association.
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 multitype point pattern (a marked point pattern
with factor-valued marks).
The argument r
is the vector of values for the
distance $r$ at which $p_{ij}(r)$ is estimated.
There is a sensible default.
This algorithm 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
.
The edge corrections implemented here are
[object Object],[object Object]
Note that the estimator assumes the process is stationary (spatially
homogeneous).
The mark connection function is estimated using density estimation techniques. The user can choose between [object Object],[object Object],[object Object],[object Object]
Value
- An object of class
"fv"
(seefv.object
). Essentially a data frame containing numeric columns r the values of the argument $r$ at which the mark connection function $p_{ij}(r)$ has been estimated theo the theoretical value of $p_{ij}(r)$ when the marks attached to different points are independent - together with a column or columns named
"iso"
and/or"trans"
, according to the selected edge corrections. These columns contain estimates of the function $p_{ij}(r)$ obtained by the edge corrections named.
References
Stoyan, D. and Stoyan, H. (1994) Fractals, random shapes and point fields: methods of geometrical statistics. John Wiley and Sons.
See Also
Multitype pair correlation pcfcross
and multitype K-functions Kcross
, Kdot
.
Use alltypes
to compute the mark connection functions
between all pairs of types.
Mark correlation markcorr
and
mark variogram markvario
for numeric-valued marks.
Examples
# Hughes' amacrine data
# Cells marked as 'on'/'off'
data(amacrine)
M <- markconnect(amacrine, "on", "off")
plot(M)
# Compute for all pairs of types at once
plot(alltypes(amacrine, markconnect))