Visit each point in a point pattern, find the neighbouring points, and compile a frequency table of the marks of these neighbour points.
marktable(X, R, N, exclude=TRUE, collapse=FALSE)A marked point pattern. 
    An object of class "ppp".
Neighbourhood radius. Incompatible with N.
Number of neighbours of each point. Incompatible with R.
Logical. If exclude=TRUE, the neighbours of a point
    do not include the point itself. If exclude=FALSE,
    a point belongs to its own neighbourhood.
Logical. If collapse=FALSE (the default) the results for
    each point are returned as separate rows of a table.
    If collapse=TRUE, the results are aggregated according to the
    type of point.
A contingency table (object of class "table").
  If collapse=FALSE, the table has one row for
  each point in X, and one column for each possible mark value.
  If collapse=TRUE, the table has one row and one column
  for each possible mark value.
This algorithm visits each point in the point pattern X,
  inspects all the neighbouring points within a radius R of the current
  point (or the N nearest neighbours of the current point),
  and compiles a frequency table of the marks attached to the
  neighbours.
The dataset X must be a multitype point pattern, that is,
  marks(X) must be a factor.
If collapse=FALSE (the default), 
  the result is a two-dimensional contingency table with one row for
  each point in the pattern, and one column for each possible mark
  value. The [i,j] entry in the table gives the number of
  neighbours of point i that have mark j.
If collapse=TRUE, this contingency table is aggregated
  according to the type of point, so that the result is a contingency
  table with one row and one column for each possible mark value.
  The  [i,j] entry in the table gives the number of
  neighbours of a point with mark i that have mark j.
To perform more complicated calculations on the neighbours of every
  point, use markstat or applynbd.
# NOT RUN {
  head(marktable(amacrine, 0.1))
  head(marktable(amacrine, 0.1, exclude=FALSE))
  marktable(amacrine, N=1, collapse=TRUE)
# }
Run the code above in your browser using DataLab