density.lpp {spatstat.linnet}R Documentation

Kernel Estimate of Intensity on a Linear Network

Description

Estimates the intensity of a point process on a linear network by applying kernel smoothing to the point pattern data.

Usage

## S3 method for class 'lpp'
density(x, sigma=NULL, ...,
        weights=NULL,
        distance=c("path", "euclidean"),
        continuous=TRUE,
        kernel="gaussian")

## S3 method for class 'splitppx'
density(x, sigma=NULL, ...)

Arguments

x

Point pattern on a linear network (object of class "lpp") to be smoothed.

sigma

Smoothing bandwidth (standard deviation of the kernel). A single numerical value in the same units as the spatial coordinates of x. Alternatively sigma may be a function which selects a bandwidth when applied to X, for example, bw.scott.iso or bw.lppl. There is a sensible default.

...

Additional arguments controlling the algorithm and the spatial resolution of the result. These arguments are passed either to densityQuick.lpp, densityHeat.lpp or densityEqualSplit depending on the algorithm chosen.

weights

Optional. Numeric vector of weights associated with the points of x. Weights may be positive, negative or zero.

distance

Character string (partially matched) specifying whether to use a kernel based on paths in the network (distance="path", the default) or a two-dimensional kernel (distance="euclidean").

kernel

Character string specifying the smoothing kernel. See dkernel for possible options.

continuous

Logical value indicating whether to compute the “equal-split continuous” smoother (continuous=TRUE, the default) or the “equal-split discontinuous” smoother (continuous=FALSE). Applies only when distance="path".

Details

Kernel smoothing is applied to the points of x using either a kernel based on path distances in the network, or a two-dimensional kernel. The result is a pixel image on the linear network (class "linim") which can be plotted.

There is also a method for split point patterns on a linear network (class "splitppx") which will return a list of pixel images.

The argument sigma specifies the smoothing bandwidth. If sigma is missing or NULL, the default is one-eighth of the length of the shortest side of the bounding box of x. If sigma is a function in the R language, it is assumed to be a bandwidth selection rule, and it will be applied to x to compute the bandwidth value.

Value

A pixel image on the linear network (object of class "linim"), or in some cases, a numeric vector of length equal to npoints(x).

Infinite bandwidth

If sigma=Inf, the resulting density estimate is constant over all locations, and is equal to the average density of points per unit length. (If the network is not connected, then this rule is applied separately to each connected component of the network).

Author(s)

Adrian Baddeley Adrian.Baddeley@curtin.edu.au and Greg McSwiggan.

References

McSwiggan, G., Baddeley, A. and Nair, G. (2016) Kernel density estimation on a linear network. Scandinavian Journal of Statistics 44, 324–345.

Okabe, A. and Sugihara, K. (2012) Spatial analysis along networks. Wiley.

See Also

lpp, linim, densityQuick.lpp, densityHeat.lpp, densityVoronoi.lpp

Examples

  X <- runiflpp(3, simplenet)
  D <- density(X, 0.2, verbose=FALSE)
  plot(D, style="w", main="", adjust=2)
  Dq <- density(X, 0.2, distance="euclidean")
  plot(Dq, style="w", main="", adjust=2)
  Dw <- density(X, 0.2, weights=c(1,2,-1), verbose=FALSE)
  De <- density(X, 0.2, kernel="epanechnikov", verbose=FALSE)
  Ded <- density(X, 0.2, kernel="epanechnikov", continuous=FALSE, verbose=FALSE)

[Package spatstat.linnet version 3.1-5 Index]