Skip to contents

Estimate a Sector-K function for second order reweighted ("inhomogeneous") pattern.

Usage

Kest_anin(
  x,
  u,
  epsilon,
  r,
  lambda = NULL,
  lambda_h,
  renormalise = TRUE,
  border = 1,
  ...
)

Arguments

x

pp, list with $x~coordinates $bbox~bounding box

u

unit vector(s) of direction, as row vectors. Default: x and y axes, viz. c(1,0) and c(0,1).

epsilon

Central half angle for the directed sector/cone (total angle of the rotation cone is 2*epsilon). Default: pi/4.

r

radius vector at which to evaluate K

lambda

optional vector of intensity estimates at points

lambda_h

if lambda missing, use this bandwidth in a kernel estimate of lambda(x)

renormalise

See details.

border

Use border correction? Default=1, yes.

...

passed on to e.g. intensity_at_points

Value

Returns a dataframe.

Details

Computes a second order reweighted version of the Sector-K. In short, we count how many pairs of points in the pattern has both a) their difference vector's angle less than 'epsilon' radians from direction 'u' and b) difference vector length less than range r. Usually r is a vector and the output is then a vector as well.

An estimate of the intensity Lambda(x) at points can be given ('lambda'). If it is a single value, the pattern is assumed to be homogeneous. If it is a vector the same length as there are points, the pattern is taken to be second-order stationary. In this case the the sum over the pairs (i,j) is weighted with 1/(lambda[i]*lambda[j]). If 'lambda' is missing, 'lambda_h', a single positive number, should be given, which is then used for estimating the non-constant Lambda(x) via Epanechnikov kernel smoothing (see intensity_at_points). If 'renormalise=TRUE', we normalise the intensity estimate so that sum(1/lambda(x))=|W|. This corresponds in spatstat's Kinhom to setting 'normpower=2'.

About border correction: If x$bbox is a a simple bounding box, the algorithm uses the translation corrected weighting 1/area(Wx intersect Wy) with Wx=W+x. If x$bbox is a bbquad-object, for example rotated polygon, the algorithm uses simple minus border correction.