Learn R Programming

spatstat.core (version 2.3-1)

Lcross.inhom: Inhomogeneous Cross Type L Function

Description

For a multitype point pattern, estimate the inhomogeneous version of the cross-type \(L\) function.

Usage

Lcross.inhom(X, i, j, …, correction)

Arguments

X

The observed point pattern, from which an estimate of the inhomogeneous cross type \(L\) function \(L_{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).

correction,…

Other arguments passed to Kcross.inhom.

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 \(L_{ij}(r)\) has been estimated

theo

the theoretical value of \(L_{ij}(r)\) for a marked Poisson process, identically equal to r

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 L_{ij}(r)Lij(r) obtained by the edge corrections named.

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.

Details

This is a generalisation of the function Lcross to include an adjustment for spatially inhomogeneous intensity, in a manner similar to the function Linhom.

All the arguments are passed to Kcross.inhom, which estimates the inhomogeneous multitype K function \(K_{ij}(r)\) for the point pattern. The resulting values are then transformed by taking \(L(r) = \sqrt{K(r)/\pi}\).

References

Moller, J. and Waagepetersen, R. Statistical Inference and Simulation for Spatial Point Processes Chapman and Hall/CRC Boca Raton, 2003.

See Also

Lcross, Linhom, Kcross.inhom

Examples

Run this code
# NOT RUN {
    # Lansing Woods data
    woods <- lansing
    
# }
# NOT RUN {
    ma <- split(woods)$maple
    wh <- split(woods)$whiteoak

    # method (1): estimate intensities by nonparametric smoothing
    lambdaM <- density.ppp(ma, sigma=0.15, at="points")
    lambdaW <- density.ppp(wh, sigma=0.15, at="points")
    L <- Lcross.inhom(woods, "whiteoak", "maple", lambdaW, lambdaM)

    # method (2): fit parametric intensity model
    fit <- ppm(woods ~marks * polynom(x,y,2))
    # evaluate fitted intensities at data points
    # (these are the intensities of the sub-processes of each type)
    inten <- fitted(fit, dataonly=TRUE)
    # split according to types of points
    lambda <- split(inten, marks(woods))
    L <- Lcross.inhom(woods, "whiteoak", "maple",
              lambda$whiteoak, lambda$maple)
    
    # synthetic example: type A points have intensity 50,
    #                    type B points have intensity 100 * x
    lamB <- as.im(function(x,y){50 + 100 * x}, owin())
    X <- superimpose(A=runifpoispp(50), B=rpoispp(lamB))
    L <- Lcross.inhom(X, "A", "B",
        lambdaI=as.im(50, Window(X)), lambdaJ=lamB)
# }

Run the code above in your browser using DataLab