R: Summarise Marks in Every Neighbourhood in a Point Pattern

markstat {spatstat.geom} | R Documentation

## Summarise Marks in Every Neighbourhood in a Point Pattern

### Description

Visit each point in a point pattern, find the neighbouring points, and summarise their marks

### Usage

       markstat(X, fun, N=NULL, R=NULL, ...)

### Arguments

`X` | A marked point pattern. An object of class `"ppp"`.
`fun` | Function to be applied to the vector of marks.
`N` | Integer. If this argument is present, the neighbourhood of a point of `X` is defined to consist of the `N` points of `X` which are closest to it.
`R` | Nonnegative numeric value. If this argument is present, the neighbourhood of a point of `X` is defined to consist of all points of `X` which lie within a distance `R` of it.
`...` | extra arguments passed to the function `fun`. They must be given in the form `name=value`.

### Details

This algorithm visits each point in the point pattern `X`, determines which points of `X` are “neighbours” of the current point, extracts the marks of these neighbouring points, applies the function `fun` to the marks, and collects the value or values returned by `fun`.

The definition of “neighbours” depends on the arguments `N` and `R`, exactly one of which must be given.

If `N` is given, then the neighbours of the current point are the `N` points of `X` which are closest to the current point (including the current point itself). If `R` is given, then the neighbourhood of the current point consists of all points of `X` which lie closer than a distance `R` from the current point.

Each point of `X` is visited; the neighbourhood of the current point is determined; the marks of these points are extracted as a vector `v`; then the function `fun` is called as:

`fun(v, ...)`

where `...` are the arguments passed from the call to `markstat`.

The results of each call to `fun` are collected and returned according to the usual rules for `apply` and its relatives. See the section on Value.

This function is just a convenient wrapper for a common use of the function `applynbd`. For more complex tasks, use `applynbd`. To simply tabulate the marks in every `R`-neighbourhood, use `marktable`.

### Value

Similar to the result of `apply`. if each call to `fun` returns a single numeric value, the result is a vector of dimension `npoints(X)`, the number of points in `X`. If each call to `fun` returns a vector of the same length `m`, then the result is a matrix of dimensions `c(m,n)`; note the transposition of the indices, as usual for the family of `apply` functions. If the calls to `fun` return vectors of different lengths, the result is a list of length `npoints(X)`.

### Author(s)

Adrian Baddeley Adrian.Baddeley@curtin.edu.au, Rolf Turner r.turner@auckland.ac.nz and Ege Rubak rubak@math.aau.dk.

### See Also

`applynbd`, `marktable`, `ppp.object`, `apply`

### Examples

      trees <- longleaf

      # average diameter of 5 closest neighbours of each tree
      md <- markstat(trees, mean, N=5)

      # range of diameters of trees within 10 metre radius
      rd <- markstat(trees, range, R=10)

[Package spatstat.geom version 2.2-0 Index]