The goal of hercgeos is to make it a little easier and more efficient to work with spatial data from the US Census and related sources.
Installation
You can install the development version of hercgeos from GitHub with:
# install.packages("devtools")
devtools::install_github("higherX4Racine/hercgeos")
Example
The fresh-from-the-servers TIGER/Line® shapefiles have decennial-census-specific column names. hercgeos helps with this.
library(hercgeos)
NASHVILLE_NH |>
purrr::discard_at("historic_district") |>
purrr::map(names) |>
tibble::enframe(name = "Layer", value = "Names") |>
knitr::kable(caption = "Original column names")
Layer | Names |
---|---|
blocks | STATEFP20 , COUNTYFP20, TRACTCE20 , BLOCKCE20 , GEOID20 , NAME20 , MTFCC20 , UR20 , UACE20 , UATYPE20 , FUNCSTAT20, ALAND20 , AWATER20 , INTPTLAT20, INTPTLON20, HOUSING20 , POP20 , geometry |
tracts | STATEFP , COUNTYFP, TRACTCE , GEOID , NAME , NAMELSAD, MTFCC , FUNCSTAT, ALAND , AWATER , INTPTLAT, INTPTLON, geometry |
Original column names
NASHVILLE_NH |>
purrr::discard_at("historic_district") |>
purrr::map(fix_old_year_suffixes) |>
purrr::map(names) |>
tibble::enframe(name = "Layer", value = "Names") |>
knitr::kable(caption = "Repaired column names")
Layer | Names |
---|---|
blocks | STATEFP , COUNTYFP, TRACTCE , BLOCKCE , GEOID , NAME , MTFCC , UR , UACE , UATYPE , FUNCSTAT, ALAND , AWATER , INTPTLAT, INTPTLON, HOUSING , POP , geometry |
tracts | STATEFP , COUNTYFP, TRACTCE , GEOID , NAME , NAMELSAD, MTFCC , FUNCSTAT, ALAND , AWATER , INTPTLAT, INTPTLON, geometry |
Repaired column names
There are also some nice presets for mapping
ggplot2::ggplot() +
geom_terrain(
NASHVILLE_NH$blocks |>
fix_old_year_suffixes() |>
fix_latlong_to_numeric() |>
transform_tiger_to_utm() |>
dplyr::mutate(
Terrain = terrain_factor(.data$UR,
.data$AWATER,
.data$ALAND)
)
) +
ggplot2::geom_sf(
data = NASHVILLE_NH$tracts |>
fix_latlong_to_numeric() |>
transform_tiger_to_utm(),
fill = NA,
color = "#ff2222",
linewidth = ggplot2::rel(2)
) +
ggplot2::theme_minimal()