Cast shp
to component polygons, build the adjacency, and check the contiguity.
Avoids issues where a precinct is actually a multipolygon
check_polygon_contiguity(shp, group, epsg = 3857)
tibble with a column for each of inputted group, created group number, and the identified connected component number
data(checkerboard)
check_polygon_contiguity(checkerboard, i)
#> Warning: Planarizing skipped. `x` missing CRS.
#> # A tibble: 64 × 3
#> group group_number component
#> <int> <int> <int>
#> 1 0 1 1
#> 2 0 1 1
#> 3 0 1 1
#> 4 0 1 1
#> 5 0 1 1
#> 6 0 1 1
#> 7 0 1 1
#> 8 0 1 1
#> 9 1 2 1
#> 10 1 2 1
#> # ℹ 54 more rows