# linearKinhom

##### Inhomogeneous Linear K Function

Computes an estimate of the inhomogeneous linear \(K\) function for a point pattern on a linear network.

- Keywords
- spatial, nonparametric

##### Usage

```
linearKinhom(X, lambda=NULL, r=NULL, ..., correction="Ang",
normalise=TRUE, normpower=1,
update=TRUE, leaveoneout=TRUE, ratio=FALSE)
```

##### Arguments

- X
Point pattern on linear network (object of class

`"lpp"`

).- lambda
Intensity values for the point pattern. Either a numeric vector, a

`function`

, a pixel image (object of class`"im"`

or`"linim"`

) or a fitted point process model (object of class`"ppm"`

or`"lppm"`

).- r
Optional. Numeric vector of values of the function argument \(r\). There is a sensible default.

- …
Ignored.

- correction
Geometry correction. Either

`"none"`

or`"Ang"`

. See Details.- normalise
Logical. If

`TRUE`

(the default), the denominator of the estimator is data-dependent (equal to the sum of the reciprocal intensities at the data points, raised to`normpower`

), which reduces the sampling variability. If`FALSE`

, the denominator is the length of the network.- normpower
Integer (usually either 1 or 2). Normalisation power. See Details.

- update
Logical value indicating what to do when

`lambda`

is a fitted model (class`"lppm"`

or`"ppm"`

). If`update=TRUE`

(the default), the model will first be refitted to the data`X`

(using`update.lppm`

or`update.ppm`

) before the fitted intensity is computed. If`update=FALSE`

, the fitted intensity of the model will be computed without re-fitting it to`X`

.- leaveoneout
Logical value (passed to

`fitted.lppm`

or`fitted.ppm`

) specifying whether to use a leave-one-out rule when calculating the intensity, when`lambda`

is a fitted model. Supported only when`update=TRUE`

.- ratio
Logical. If

`TRUE`

, the numerator and denominator of the estimate will also be saved, for use in analysing replicated point patterns.

##### Details

This command computes the inhomogeneous version of the linear \(K\) function from point pattern data on a linear network.

If `lambda = NULL`

the result is equivalent to the
homogeneous \(K\) function `linearK`

.
If `lambda`

is given, then it is expected to provide estimated values
of the intensity of the point process at each point of `X`

.
The argument `lambda`

may be a numeric vector (of length equal to
the number of points in `X`

), or a `function(x,y)`

that will be
evaluated at the points of `X`

to yield numeric values,
or a pixel image (object of class `"im"`

) or a fitted point
process model (object of class `"ppm"`

or `"lppm"`

).

If `lambda`

is a fitted point process model,
the default behaviour is to update the model by re-fitting it to
the data, before computing the fitted intensity.
This can be disabled by setting `update=FALSE`

.

If `correction="none"`

, the calculations do not include
any correction for the geometry of the linear network.
If `correction="Ang"`

, the pair counts are weighted using
Ang's correction (Ang, 2010).

Each estimate is initially computed as
$$
\widehat K_{\rm inhom}(r) = \frac{1}{\mbox{length}(L)}
\sum_i \sum_j \frac{1\{d_{ij} \le r\}
e(x_i,x_j)}{\lambda(x_i)\lambda(x_j)}
$$
where `L`

is the linear network,
\(d_{ij}\) is the distance between points
\(x_i\) and \(x_j\), and
\(e(x_i,x_j)\) is a weight.
If `correction="none"`

then this weight is equal to 1,
while if `correction="Ang"`

the weight is
\(e(x_i,x_j,r) = 1/m(x_i, d_{ij})\)
where \(m(u,t)\) is the number of locations on the network that lie
exactly \(t\) units distant from location \(u\) by the shortest
path.

If `normalise=TRUE`

(the default), then the estimates
described above
are multiplied by \(c^{\mbox{normpower}}\) where
\(
c = \mbox{length}(L)/\sum (1/\lambda(x_i)).
\)
This rescaling reduces the variability and bias of the estimate
in small samples and in cases of very strong inhomogeneity.
The default value of `normpower`

is 1 (for consistency with
previous versions of spatstat)
but the most sensible value is 2, which would correspond to rescaling
the `lambda`

values so that
\(
\sum (1/\lambda(x_i)) = \mbox{area}(W).
\)

##### Value

Function value table (object of class `"fv"`

).

##### References

Ang, Q.W. (2010) Statistical methodology for spatial point patterns on a linear network. MSc thesis, University of Western Australia.

Ang, Q.W., Baddeley, A. and Nair, G. (2012)
Geometrically corrected second-order analysis of
events on a linear network, with applications to
ecology and criminology.
*Scandinavian Journal of Statistics* **39**, 591--617.

##### See Also

##### Examples

```
# NOT RUN {
data(simplenet)
X <- rpoislpp(5, simplenet)
fit <- lppm(X ~x)
K <- linearKinhom(X, lambda=fit)
plot(K)
# }
```

*Documentation reproduced from package spatstat, version 1.56-1, License: GPL (>= 2)*