Computes an adaptive estimate of the intensity function of a point pattern using the Dirichlet-Voronoi tessellation.
densityVoronoi(X, ...)# S3 method for ppp
densityVoronoi(X, f = 1, ...,
counting=FALSE,
fixed=FALSE,
nrep = 1, verbose=TRUE, internal=NULL)
A pixel image (object of class "im") whose values are
estimates of the intensity of X.
Point pattern dataset (object of class "ppp").
Fraction (between 0 and 1 inclusive) of the data points that will be used to build a tessellation for the intensity estimate.
Arguments passed to as.im determining the
pixel resolution of the result.
Logical value specifying the choice of estimation method. See Details.
Logical. If FALSE (the default), the data points are independently
randomly thinned, so the number of data points that are retained
is random. If TRUE, the number of data points retained
is fixed. See Details.
Number of independent repetitions of the randomised procedure.
Logical value indicating whether to print progress reports.
Internal use only.
If
f=1 (the default), the Voronoi estimate (Brown, 1964;
Ord, 1978; Barr and Schoenberg, 2010)
is computed: the point pattern X is used to construct
a Voronoi/Dirichlet tessellation (see dirichlet);
the areas of the Dirichlet tiles are computed; the estimated intensity
in each tile is the reciprocal of the tile area.
The result is a pixel image
of intensity estimates which are constant on each tile of the tessellation.
If
If f=0, the intensity estimate at every location is
equal to the average intensity (number of points divided by window area).
The result is a pixel image
of intensity estimates which are constant.
If
f is strictly between 0 and 1,
the estimation method is applied to a random subset of X.
This randomised procedure is repeated nrep times,
and the results are averaged.
The subset is selected as follows:
if fixed=FALSE,
the dataset X is randomly
thinned by deleting or retaining each point independently, with
probability f of retaining a point.
if fixed=TRUE,
a random sample of fixed size m is taken from
the dataset X, where m is the largest integer
less than or equal to f*n and n is the number of
points in X.
Then the intensity estimate is calculated as follows:
if counting = FALSE (the default), the thinned pattern
is used to construct a Dirichlet tessellation and form the
Voronoi estimate (Brown, 1964; Ord, 1978; Barr and Schoenberg, 2010)
which is then adjusted by a factor 1/f or n/m as appropriate.
to obtain an estimate
of the intensity of X in the tile.
if counting = TRUE,
the randomly selected subset A
is used to construct a Dirichlet tessellation, while the
complementary subset B (consisting of points that were not
selected in the sample) is used for counting
to calculate a quadrat count estimate of intensity.
For each tile of the Dirichlet tessellation formed by A,
we count the number of points of B falling in the
tile, and divide by the area of the same tile, to obtain an estimate
of the intensity of the pattern B in the tile.
This estimate is adjusted by 1/(1-f)
or n/(n-m) as appropriate
to obtain an estimate of the intensity of X in the tile.
Adrian Baddeley [email protected], Rolf Turner [email protected], Ege Rubak [email protected] and Mehdi Moradi [email protected].
This function is an alternative to density.ppp. It
computes an estimate of the intensity function of a point pattern
dataset using the Dirichlet/Voronoi tessellation.
The result is a pixel image giving the estimated intensity.
Several versions are supported:
the original Voronoi estimate
(Brown, 1964; Ord, 1978; Barr and Schoenberg, 2010) selected by
f=1;
see the section on Voronoi estimate;
the estimate of Baddeley (2007) selected by
0 < f < 1,
fixed=TRUE and counting=TRUE;
see the section on Resample-smoothing estimates;
the estimate of Moradi et al (2019) selected by
0 < f < 1,
fixed=FALSE and counting=FALSE;
see the section on Resample-smoothing estimates;
The Voronoi estimator (corresponding to f=1)
was introduced by Brown (1964) and Ord (1978) and its statistical
properties were analysed by Barr and Schoenberg (2010).
Voronoi estimates have high variability because the Voronoi
tessellation is highly sensitive to the data point coordinates.
Ogata et al. (2003) and Ogata (2004) estimated intensity using the
Dirichlet-Voronoi tessellation in a modelling context.
In an effort to reduce variability,
Baddeley (2007) proposed intensity estimation by subsampling
and averaging. Moradi et al (2019) developed the subsampling technique
and called it the smoothed Voronoi estimator.
These randomised estimators strike a tradeoff between bias and variance,
and generally have better statistical performance than the Voronoi
estimator.
Baddeley, A. (2007) Validation of statistical models for spatial point patterns. In J.G. Babu and E.D. Feigelson (eds.) SCMA IV: Statistical Challenges in Modern Astronomy IV, volume 317 of Astronomical Society of the Pacific Conference Series, San Francisco, California USA, 2007. Pages 22--38.
Barr, C., and Schoenberg, F.P. (2010). On the Voronoi estimator for the intensity of an inhomogeneous planar Poisson process. Biometrika 97 (4), 977--984.
Brown, G. S. (1964) Point density in stems per acre. Forest Research Institute Silvicultural Report 15, New Zealand Forest Service.
Moradi, M., Cronie, 0., Rubak, E., Lachieze-Rey, R., Mateu, J. and Baddeley, A. (2019) Resample-smoothing of Voronoi intensity estimators. Statistics and Computing 29 (5) 995--1010.
Ogata, Y. (2004) Space-time model for regional seismicity and detection of crustal stress changes. Journal of Geophysical Research, 109, 2004.
Ogata, Y., Katsura, K. and Tanemura, M. (2003). Modelling heterogeneous space-time occurrences of earthquakes and its residual analysis. Applied Statistics 52 499--509.
Ord, J.K. (1978) How many trees in a forest? Mathematical Scientist 3, 23--33.
Rakshit, S., Baddeley, A. and Nair, G. (2027) Bagging improves the performance of intensity estimators of spatial point patterns. Submitted for publication.
Alternative options include the fixed kernel estimator
density.ppp,
the adaptive (variable bandwidth) kernel estimator
densityAdaptiveKernel.ppp,
and the nearest neighbour density estimator
nndensity.ppp.
The interface function adaptive.density can be used
to switch between these options.
See dirichlet for the Voronoi-Dirichlet
tessellation.
See im.object for the structure of pixel images.
opa <- par(mfrow=c(1,3))
plot(nztrees)
plot(densityVoronoi(nztrees, 1, f=1), main="Voronoi estimate")
nr <- if(interactive()) 100 else 5
plot(densityVoronoi(nztrees, f=0.5, nrep=nr), main="smoothed Voronoi estimate")
par(opa)
Run the code above in your browser using DataLab