edges {geostan} | R Documentation |
Edge list
Description
Creates a list of connected nodes following the graph representation of a spatial connectivity matrix.
Usage
edges(C, unique_pairs_only = TRUE, shape)
Arguments
C |
A connectivity matrix where connection between two nodes is indicated by non-zero entries. |
unique_pairs_only |
By default, only unique pairs of nodes (i, j) will be included in the output. |
shape |
Optional spatial object (geometry) to which |
Details
This is used internally for stan_icar
, can be helpful for creating the scaling factor for BYM2 models fit with stan_icar
, and can be used for visualizing a spatial connectivity matrix.
Value
If shape
is missing, this returns a data.frame
with three columns. The first two columns (node1
and node2
) contain the indices of connected pairs of nodes; only unique pairs of nodes are included (unless unique_pairs_only = FALSE
). The third column (weight
) contains the corresponding matrix element, C[node1, node2]
.
If shape
is provided, the results are joined to an sf
object so the connections can be visualized.
See Also
shape2mat
, prep_icar_data
, stan_icar
Examples
data(sentencing)
C <- shape2mat(sentencing)
nbs <- edges(C)
head(nbs)
## similar to:
head(Matrix::summary(C))
head(Matrix::summary(shape2mat(georgia, "W")))
## add geometry for plotting
library(sf)
E <- edges(C, shape = sentencing)
g1 = st_geometry(E)
g2 = st_geometry(sentencing)
plot(g1, lwd = .2)
plot(g2, add = TRUE)