Call Packages from Library

library(tidycensus,quietly=T)
library(sf)
## Linking to GEOS 3.11.0, GDAL 3.5.3, PROJ 9.1.0; sf_use_s2() is TRUE
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union

Note: you can run quietly=T after any library command to remove the messages in the white boxes with ## in your output, e.g., library(sf, quietly=T)

Read in Bexar county tracts

(Seem familiar? We did this chunk below before in Lab 1/Homework 2.)

sa_acs<-get_acs(geography = "tract",
                state="TX",
                county = c("Bexar"),
                year = 2019,
                variables=c( "DP05_0001E", 
                            "DP03_0119PE") ,
                geometry = T, output = "wide")
## Getting data from the 2015-2019 5-year ACS
## Warning: • You have not set a Census API key. Users without a key are limited to 500
## queries per day and may experience performance limitations.
## ℹ For best results, get a Census API key at
## http://api.census.gov/data/key_signup.html and then supply the key to the
## `census_api_key()` function to use it throughout your tidycensus session.
## This warning is displayed once per session.
## Downloading feature geometry from the Census website.  To cache shapefiles for use in future sessions, set `options(tigris_use_cache = TRUE)`.
## Using the ACS Data Profile
#create a county FIPS code - 5 digit
sa_acs$county<-substr(sa_acs$GEOID, 1, 5)
#rename variables and filter missing cases
sa_acs2<-sa_acs%>%
  mutate(totpop= DP05_0001E, ppov=DP03_0119PE) %>%
#  st_transform(crs = 102740)%>%
  na.omit()

Find Coordinate System of Current Map

See Coordinate Systems, Projections, and Transformations from ArcGIS Pro/ESRI for more information about these concepts.

st_crs(sa_acs2)
## Coordinate Reference System:
##   User input: NAD83 
##   wkt:
## GEOGCRS["NAD83",
##     DATUM["North American Datum 1983",
##         ELLIPSOID["GRS 1980",6378137,298.257222101,
##             LENGTHUNIT["metre",1]]],
##     PRIMEM["Greenwich",0,
##         ANGLEUNIT["degree",0.0174532925199433]],
##     CS[ellipsoidal,2],
##         AXIS["latitude",north,
##             ORDER[1],
##             ANGLEUNIT["degree",0.0174532925199433]],
##         AXIS["longitude",east,
##             ORDER[2],
##             ANGLEUNIT["degree",0.0174532925199433]],
##     ID["EPSG",4269]]

We see these tracts are in a Geographic Coordinate System (GCS) called North American Datum 1983 (NAD83).

Create Basic Map

library(tmap)
library(tmaptools)
tm_shape(sa_acs2)+
  tm_polygons("ppov", title="% in Poverty",
              palette="Blues",
              style="quantile",
              n=5 )+
  tm_format("World",
            main.title="San Antonio Poverty Estimates (2019) - Quintile Breaks",
            main.title.position=c('center','top'),
            main.title.size=1.5,
            title="Author: Jules Gonzalez \nSource: ACS 2019",
            legend.title.size=1.7,
            legend.outside=T,
            legend.text.size=1.2)+
  tm_scale_bar(position = c("left","bottom"))+
  tm_compass()

Click here for more tmap aesthetic features.

Click here for a quick discussion on quantile vs. quintile.

Re-Project Map into “South Central Texas” Projection

(Remember 2278 from the QGIS portion of Lab 2?)

Find other coordinate references here.

new_sa<-st_transform(sa_acs2, crs = 2278)
#Extract two tracts
catdog2278<-sa_acs2%>%
  filter(GEOID %in% c(48029181820, 48029110600))
# get centroid coordinates for two tracts (these two tracts are where UTSA Main and Downtown Campuses are)
tr_co2278<-st_centroid(catdog2278)
## Warning in st_centroid.sf(catdog2278): st_centroid assumes attributes are
## constant over geometries of x
head(tr_co2278)
## Simple feature collection with 2 features and 9 fields
## Geometry type: POINT
## Dimension:     XY
## Bounding box:  xmin: -98.61502 ymin: 29.43017 xmax: -98.50751 ymax: 29.57909
## Geodetic CRS:  NAD83
##         GEOID                                      NAME DP05_0001E DP05_0001M
## 1 48029181820 Census Tract 1818.20, Bexar County, Texas       8305        833
## 2 48029110600    Census Tract 1106, Bexar County, Texas       5293        423
##   DP03_0119PE DP03_0119PM                   geometry county totpop ppov
## 1        15.2         9.1 POINT (-98.61502 29.57909)  48029   8305 15.2
## 2        37.8        15.2 POINT (-98.50751 29.43017)  48029   5293 37.8

##Texas Centric Albers Equal Area

new_sa<-st_transform(sa_acs2, crs = 3083)

#Extract two tracts
catdog3083<-new_sa%>%
  filter(GEOID %in% c(48029181820, 48029110600))
# get centroid coordinates for two tracts (these two tracts are where UTSA Main and Downtown Campuses are)
tr_co83<-st_centroid(catdog3083)
## Warning in st_centroid.sf(catdog3083): st_centroid assumes attributes are
## constant over geometries of x
head(tr_co83)
## Simple feature collection with 2 features and 9 fields
## Geometry type: POINT
## Dimension:     XY
## Bounding box:  xmin: 1633963 ymin: 7257682 xmax: 1644584 ymax: 7274079
## Projected CRS: NAD83 / Texas Centric Albers Equal Area
##         GEOID                                      NAME DP05_0001E DP05_0001M
## 1 48029181820 Census Tract 1818.20, Bexar County, Texas       8305        833
## 2 48029110600    Census Tract 1106, Bexar County, Texas       5293        423
##   DP03_0119PE DP03_0119PM                geometry county totpop ppov
## 1        15.2         9.1 POINT (1633963 7274079)  48029   8305 15.2
## 2        37.8        15.2 POINT (1644584 7257682)  48029   5293 37.8

Measure Feet Apart

head(tr_co2278)
## Simple feature collection with 2 features and 9 fields
## Geometry type: POINT
## Dimension:     XY
## Bounding box:  xmin: -98.61502 ymin: 29.43017 xmax: -98.50751 ymax: 29.57909
## Geodetic CRS:  NAD83
##         GEOID                                      NAME DP05_0001E DP05_0001M
## 1 48029181820 Census Tract 1818.20, Bexar County, Texas       8305        833
## 2 48029110600    Census Tract 1106, Bexar County, Texas       5293        423
##   DP03_0119PE DP03_0119PM                   geometry county totpop ppov
## 1        15.2         9.1 POINT (-98.61502 29.57909)  48029   8305 15.2
## 2        37.8        15.2 POINT (-98.50751 29.43017)  48029   5293 37.8
64041.12/5280 #To get feet into miles
## [1] 12.129
st_distance(tr_co83)
## Units: [m]
##          1        2
## 1     0.00 19536.16
## 2 19536.16     0.00
19536.16/1609.34 
## [1] 12.13924

With NO Transformation

#new_sa<-st_transform(sa_acs2, crs = 3083)

#Extract two tracts
notrans<-sa_acs2%>%
  filter(GEOID %in% c(48029181820, 48029110600))
# get centroid coordinates for two tracts (these two tracts are where UTSA Main and Downtown Campuses are)
no<-st_centroid(notrans)
## Warning in st_centroid.sf(notrans): st_centroid assumes attributes are constant
## over geometries of x
head(no)
## Simple feature collection with 2 features and 9 fields
## Geometry type: POINT
## Dimension:     XY
## Bounding box:  xmin: -98.61502 ymin: 29.43017 xmax: -98.50751 ymax: 29.57909
## Geodetic CRS:  NAD83
##         GEOID                                      NAME DP05_0001E DP05_0001M
## 1 48029181820 Census Tract 1818.20, Bexar County, Texas       8305        833
## 2 48029110600    Census Tract 1106, Bexar County, Texas       5293        423
##   DP03_0119PE DP03_0119PM                   geometry county totpop ppov
## 1        15.2         9.1 POINT (-98.61502 29.57909)  48029   8305 15.2
## 2        37.8        15.2 POINT (-98.50751 29.43017)  48029   5293 37.8
st_distance(no)
## Units: [m]
##          [,1]     [,2]
## [1,]     0.00 19555.86
## [2,] 19555.86     0.00
19555.86/1609.34
## [1] 12.15148

##Homework Questions

##What is the distance between the two points? 
# When using CRS 2278, the distance between the two points is 12.129 or 12.13 miles. 

# When using CRS 3083, the distance between the two points is 12.139 or 12.14 miles.

# When using no transformation, the distance between the two points is 12.15 miles. 

##Is this distance interpretable? 

# Yes, with miles as the units of measurement.  

##In general, why is it important to have an accurate system of projection? How could your results be sensitive to this?
# Accurate system of projection is important because the results may affect the accuracy of the results. Different projections can yield different results based on the nature of the data and the purpose of the projection.