dens.par.sep: Separable adaptive spatio-temporal intensity estimator

View source: R/dens.par.sep.R

dens.par.sepR Documentation

Separable adaptive spatio-temporal intensity estimator

Description

Provides an adaptive-bandwidth kernel estimate for spatio-temporal point patterns in a separable fashion, i.e., by multiplying spatial and temporal marginals.

Usage

dens.par.sep(
  X,
  t = NULL,
  dimyx = 128,
  dimt = 128,
  bw.xy = NULL,
  bw.t = NULL,
  ngroups.xy = NULL,
  ngroups.t = NULL,
  at = c("bins", "points")
)

Arguments

X

A spatial point pattern (an object of class ppp) with the spatial coordinates of the observations. It may contain marks representing times.

t

A numeric vector of temporal coordinates with equal length to the number of points in X. This gives the time associated with each spatial point. This argument is not necessary if time marks are provided to the point pattern X.

dimyx

Spatial pixel resolution. The default is 128 for each axes.

dimt

Temporal bin vector dimension. The default is 128.

bw.xy

Numeric vector of spatial smoothing bandwidths for each point in X. By default this is computed using bw.abram.

bw.t

Numeric vector of temporal smoothing bandwidths for each point in t. By default this is computed using bw.abram.temp.

ngroups.xy

Number of groups in which the spatial bandwidths should be partitioned. If this number is 1, then a classical non-adaptive estimator will be used for the spatial part with a bandwidth selected as the median of the bw.xy vector.

ngroups.t

Number of groups in which the temporal bandwidths should be partitioned. If this number is 1, then a classical non-adaptive estimator will be used for the temporal part with a bandwidth selected as the median of the bw.t vector.

at

String specifying whether to estimate the intensity at a mesh (at = "bins") or only at the points of X (at = "points").

Details

This function computes a spatio-temporal adaptive kernel estimate of the intensity in a separable fashion. It starts from a planar point pattern X and a vector of times t and uses partition techniques separately for the spatial and temporal components, then it multiplies both components and normalises by the number of points to preserve the mass. The arguments bw.xy and bw.t specify the smoothing bandwidth vectors to be applied to each of the points in X and t. They should be a numeric vectors of bandwidths. The method partition the range of bandwidths into intervals, subdividing the points of the pattern X and t into sub-patterns according to the bandwidths, and applying fixed-bandwidth smoothing to each sub-pattern. Specifying ngroups.xy = 1 is the same as fixed-bandwidth smoothing with bandwidth sigma = median(bw.xy) in the spatial case and ngroups.t = 1 is the same as fixed-bandwidth smoothing with bandwidth sigma = median(bw.xy).

Value

If at = "points" (the default), the result is a numeric vector with one entry for each data point in X. if at = "bins" is a list named (by time-point) list of pixel images (im objects) corresponding to the joint spatio-temporal intensity over space at each discretised time bin.

Author(s)

Jonatan A. González

References

González J.A. and Moraga P. (2018) An adaptive kernel estimator for the intensity function of spatio-temporal point processes https://arxiv.org/pdf/2208.12026.pdf

Examples

data(santander)
stIntensity <- dens.par.sep(santander,
                            dimt = 16,
                            ngroups.xy = 3, ngroups.t = 2,
                            at = "bins")
plot(spatstat.geom::as.solist(stIntensity[12:15]), ncols = 4,
     main = 'Separable Example', equal.ribbon = TRUE)


kernstadapt documentation built on Nov. 16, 2022, 1:12 a.m.