Creates a spatial weights matrix by multiplying an adjacency (connectivity) matrix (see connectivity_matrix()) and an edges weights matrix (see edges_weights_matrix()). Resulting spatial weights equal to 0 will be replaced by 4 x max(w), where max(w) is the maximal weight in the matrix.
spatial_weights_matrix(x, y)
Arguments
x: an adjacency matrix of dimensions n x n, where n is the number of nodes (sites). The output of connectivity_matrix().
y: an edges weight matrix of dimensions n x n, where n is the number of nodes (sites). The output of edges_weights_matrix().
Returns
A spatial weights matrix of dimensions n x n, where n is the number of nodes (sites).
Examples
# Import Adour sites ----path_to_file <- system.file("extdata","adour_survey_sampling.csv", package ="chessboard")adour_sites <- read.csv(path_to_file)# Select the 15 first sites ----adour_sites <- adour_sites[1:15,]# Create node labels ----adour_sites <- create_node_labels(adour_sites, location ="location", transect ="transect", quadrat ="quadrat")# Create edges based on the pawn move (directed network) ----adour_edges <- create_edge_list(adour_sites, method ="pawn", directed =TRUE)# Get connectivity matrix ----adour_adjacency <- connectivity_matrix(adour_edges)# Convert sites to sf object (POINTS) ----adour_sites_sf <- sf::st_as_sf(adour_sites, coords = c("longitude","latitude"), crs ="epsg:2154")# Compute distances between pairs of sites along the Adour river ----adour_dists <- distance_euclidean(adour_sites_sf)# Create Edges weights matrix ----adour_weights <- edges_weights_matrix(adour_dists)# Create Spatial weights matrix ----spatial_weights_matrix(adour_adjacency, adour_weights)