tiger_landmarks_sf {RcensusPkg}R Documentation

tiger_landmarks_sf

Description

This function performs three tasks:

  1. Download to an output directory a zip file from the TIGER/Line Shapefiles database.

  2. Unzip the zip file and locate the shape file of interest.

  3. Read and convert the shape file to a simple feature object.

Usage

tiger_landmarks_sf(
  state = NULL,
  output_dir = tempdir(),
  delete_files = TRUE,
  vintage = 2020,
  entity = "point",
  set_crs = NULL,
  transform_crs = NULL,
  sf_info = FALSE,
  do_progress = FALSE,
  shapefile = NULL,
  express = NULL,
  check_na = FALSE
)

Arguments

state

The required two-digit FIPS code for the state of interest. See usmap::fips function for finding FIPS codes.

output_dir

A full directory path where the shapefile and its associated files will be downloaded. The default is the directory defined by the value returned by tempdir().

delete_files

A logical which if TRUE will delete the shapefile and associated files in 'output_dir'. The default is TRUE.

vintage

A numeric that sets the vintage of interest. The default is 2020. The value should be greater than 2010.

entity

A character string that sets the specific landmark entity of interest. The acceptable values are "area" or "point". The default is "point".

set_crs

A numeric or character string which if non-NULL calls sf::st_crs() to set the crs of the geometries and transforms them.

transform_crs

A numeric or character string which if non-NULL calls sf::st_transform() to perform a crs transform of the geometries. Note that the crs of the shapefile must not be NA.

sf_info

A logical which if TRUE displays info on the resulting simple feature object.

do_progress

A logical which if TRUE displays a progress bar during the download.

shapefile

A full file path to a shapefile folder with its unzipped files to be processed instead of downloading.

express

A logical expression object used to filter the resultant simple feature dataframe. For example, one of the columns of the resultant simple feature dataframe is "STATEFP". If you wanted to return just the geometries for Nelson County, Kentucky (which has a fips code of "179"), then you assign 'express' equal to: expression(COUNTYFP == "179"). The expression will be evaluated and only the landmark geometries for Nelson County will be returned.

check_na

A logical which if TRUE will remove rows that have missing values for any of the columns. The default is to not check the columns for NA values.

Note: Vintage must be greater than 2010.

Details

Returns simple feature (sf) landmark related geometric polygons provided by the US Census Bureau's TIGER/Line Shapefiles database. See Simple Features for R for more information on simple features. Along with the geometries, additional landmark related variables are provided. See Appendix K-1.K-2, Record Layout: Area/Point Landmark Shapefile for a description of landmark related area and point variables of the sf file. For further information on the Census Bureau's shape files see About the 2021 TIGER/Line Shapefiles. From Chapter 4.11 Landmark (Area and Point – "The Census Bureau includes landmarks in the MAF/TIGER System to locate special features and help enumerators during field operations. Some of the more common landmark types include area landmarks (e.g., airports, cemeteries, parks, and educational facilities) and point landmarks (e.g., schools and churches)"

The function returns the simple feature object which can easily be mapped (see RplotterPkg::create_sf_plot()) or joined with US Census Bureau demographic data via the GEOID value.

Some earlier vintages may have NA for the crs so you may need to specify the 'transform_crs' to 3426. Also you may be interested in using a state level crs. See epsg.io to search worldwide for crs.

Value

A data frame object of class sf

Examples

library(downloader)
library(sf)
library(data.table)
library(withr)
library(usmap)
library(RcensusPkg)

# Get the sf object for landmarks in the state of Kentucky
# Define a temporary, self deleting output folder for the downloaded shapefiles
output_dir <- withr::local_tempdir()
if(!dir.exists(output_dir)){
  dir.create(output_dir)
}

# Get the fips code for the state
kentucky_fips <- usmap::fips(state = "kentucky")

# Get the "point" landmarks for Kentucky
kentucky_landmarks_sf <- RcensusPkg::tiger_landmarks_sf(
  state = kentucky_fips,
  entity = "point",
  check_na = TRUE,
  output_dir = output_dir,
  delete_files = FALSE
)


[Package RcensusPkg version 0.1.5 Index]