Mark-Weighted K Function
Estimates the mark-weighted K function of a marked point pattern.
Kmark(X, f = NULL, r = NULL, correction = c("isotropic", "Ripley", "translate"), ..., f1 = NULL, normalise = TRUE, returnL = FALSE, fargs = NULL) markcorrint(X, f = NULL, r = NULL, correction = c("isotropic", "Ripley", "translate"), ..., f1 = NULL, normalise = TRUE, returnL = FALSE, fargs = NULL)
X |
The observed point pattern.
An object of class |
f |
Optional. Test function f used in the definition of the mark correlation function. An R function with at least two arguments. There is a sensible default. |
r |
Optional. Numeric vector. The values of the argument r at which the mark correlation function k[f](r) should be evaluated. There is a sensible default. |
correction |
A character vector containing any selection of the
options |
... |
Ignored. |
f1 |
An alternative to |
normalise |
If |
returnL |
Compute the analogue of the K-function if |
fargs |
Optional. A list of extra arguments to be passed to the function
|
The functions Kmark
and markcorrint
are identical.
(Eventually markcorrint
will be deprecated.)
The mark-weighted K function K[f](r) of a marked point process (Penttinen et al, 1992) is a generalisation of Ripley's K function, in which the contribution from each pair of points is weighted by a function of their marks. If the marks of the two points are m1, m2 then the weight is proportional to f(m1, m2) where f is a specified test function.
The mark-weighted K function is defined so that
lambda * K_f(r) = C[f](r)/E[f(M1, M2)]
where
C[f](r) = E[ sum[x in X] f(m(u), m(x)) 1(0 < d(u,x) <= r) | u in X]
for any spatial location u taken to be a typical point of the point process X. Here d(u,x) is the euclidean distance between u and x, so that the sum is taken over all random points x that lie within a distance r of the point u. The function C[f](r) is the unnormalised mark-weighted K function. To obtain K[f](r) we standardise C[f](r) by dividing by E[f(M1,M2)], the expected value of f(M1,M2) when M1 and M2 are independent random marks with the same distribution as the marks in the point process.
Under the hypothesis of random labelling, the mark-weighted K function is equal to Ripley's K function, K[f](r) = K(r).
The mark-weighted K function is sometimes called the mark correlation integral because it is related to the mark correlation function k[f](r) and the pair correlation function g(r) by
K[f](r) = 2 * pi * integral[0,r] (s * k[f](s) * g(s) ) ds
See markcorr
for a definition of the
mark correlation function.
Given a marked point pattern X
,
this command computes edge-corrected estimates
of the mark-weighted K function.
If returnL=FALSE
then the estimated
function K[f](r) is returned;
otherwise the function
L[f](r) = sqrt(K[f](r)/pi)
is returned.
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 mark correlation integral K[f](r) has been estimated |
theo |
the theoretical value of K[f](r) when the marks attached to different points are independent, namely pi * r^2 |
together with a column or columns named
"iso"
and/or "trans"
,
according to the selected edge corrections. These columns contain
estimates of the mark-weighted K function K[f](r)
obtained by the edge corrections named (if returnL=FALSE
).
Adrian Baddeley Adrian.Baddeley@curtin.edu.au
and Rolf Turner r.turner@auckland.ac.nz
Penttinen, A., Stoyan, D. and Henttonen, H. M. (1992) Marked point processes in forest statistics. Forest Science 38 (1992) 806-824.
Illian, J., Penttinen, A., Stoyan, H. and Stoyan, D. (2008) Statistical analysis and modelling of spatial point patterns. Chichester: John Wiley.
markcorr
to estimate the mark correlation function.
# CONTINUOUS-VALUED MARKS: # (1) Spruces # marks represent tree diameter # mark correlation function ms <- Kmark(spruces) plot(ms) # (2) simulated data with independent marks X <- rpoispp(100) X <- X %mark% runif(npoints(X)) Xc <- Kmark(X) plot(Xc) # MULTITYPE DATA: # Hughes' amacrine data # Cells marked as 'on'/'off' M <- Kmark(amacrine, function(m1,m2) {m1==m2}, correction="translate") plot(M)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.