Assign species occurrence or community points to DGGS hexagonal cells at a given resolution using dggridR.
assign_to_hexagons <- function(pts, res = 7, topology = "HEXAGON",
lon_col = "lon", lat_col = "lat") {
if (!requireNamespace("dggridR", quietly = TRUE)) install.packages("dggridR")
library(dggridR)
dggs <- dgconstruct(res = res, metric = FALSE,
resround = "down", topology = topology)
pts$cell <- dgGEO_to_SEQNUM(dggs,
in_lon_deg = pts[[lon_col]],
in_lat_deg = pts[[lat_col]])$seqnum
pts
}