nbOrder function

Determine Neighbourhood Order Matrix from Binary Adjacency Matrix

Determine Neighbourhood Order Matrix from Binary Adjacency Matrix

Given a square binary adjacency matrix, the function nbOrder determines the integer matrix of neighbourhood orders (shortest-path distance).

nbOrder(neighbourhood, maxlag = Inf)

Arguments

  • neighbourhood: a square, numeric or logical, and usually symmetric matrix with finite entries (and usually zeros on the diagonal) which indicates vertex adjacencies, i.e., first-order neighbourhood (interpreted as neighbourhood == 1, not >0).
  • maxlag: positive scalar integer specifying an upper bound for the neighbourhood order. The default (Inf) means no truncation (but orders cannot be larger than the number of regions minus 1), whereas maxlag = 1 just returns the input neighbourhood matrix (converted to binary integer mode).

Returns

An integer matrix of neighbourhood orders, i.e., the shortest-path distance matrix of the vertices. The dimnames of the input neighbourhood matrix are preserved.

Author(s)

Sebastian Meyer

See Also

nblag from the spdep package

Examples

## generate adjacency matrix set.seed(1) n <- 6 adjmat <- matrix(0, n, n) adjmat[lower.tri(adjmat)] <- sample(0:1, n*(n-1)/2, replace=TRUE) adjmat <- adjmat + t(adjmat) adjmat ## determine neighbourhood order matrix nblags <- nbOrder(adjmat) nblags