R: Mark-Weighted K Function

Kmark {spatstat.core} | R Documentation

## Mark-Weighted K Function

### Description

Estimates the mark-weighted K function of a marked point pattern.

### Usage

      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)

### Arguments

`X` | The observed point pattern. An object of class `"ppp"` or something acceptable to `as.ppp`.
`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 `"isotropic"`, `"Ripley"` or `"translate"`. It specifies the edge correction(s) to be applied. Alternatively `correction="all"` selects all options.
`...` | Ignored.
`f1` | An alternative to `f`. If this argument is given, then f is assumed to take the form f(u,v)=f1(u) * f1(v).
`normalise` | If `normalise=FALSE`, compute only the numerator of the expression for the mark correlation.
`returnL` | Compute the analogue of the K-function if `returnL=FALSE` or the analogue of the L-function if `returnL=TRUE`.
`fargs` | Optional. A list of extra arguments to be passed to the function `f` or `f1`.

### Details

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.

### 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 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`).

### Author(s)

Adrian Baddeley Adrian.Baddeley@curtin.edu.au

and Rolf Turner r.turner@auckland.ac.nz

### References

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.

### See Also

`markcorr` to estimate the mark correlation function.

### Examples

        # 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)

[Package spatstat.core version 2.4-4 Index]