Initial commit

This commit is contained in:
2021-10-29 13:18:50 -04:00
commit c22b6c0c95
19 changed files with 488 additions and 0 deletions
@@ -0,0 +1,59 @@
## Creates single file containing foreign-born variables at the
## 2010-2014 through 2013-2017 American Community Surveys for tracts
## in the DC Area
## fbpop = Foreign-born population
## eur = European foreign-born
## asi = Asian foreign-born
## afr = African foreign-born
## oce = Oceania foreign-born
## lat = Latin American foreign-born
## Note `p` variables represent *proportion of foreign-born residents*
##
## Note: Remainder of foreign born are from North America, i.e.:
## fbpop - sum(eur + asi + afr + oce + lat) = N. American foreign-born
## Set up environment
library(tidyverse)
## Identify variable abbreviations
regions <- c('fbpop', 'eur','asi','afr','oce','lat')
pregions <- paste0('p',regions[-1])
regionvars <- c(regions, pregions)
geovars <- c('GISJOIN', 'STATE', 'COUNTY')
## Set Functions
source('dcarea_functions.R')
## Create dataset that contains only DC-area tracts and constructed
## foreign-born variables
select.regionvars <- function(dta) {
dta <- select.dcarea(dta)
dta$GISJOIN <- as.character(dta$GISJOIN)
return(dta[, c(geovars, regionvars)])
}
## Load datasets containing foreign-born variables from files based on
## 2010 tracts
load('../US/tracts/2010/tabular/foreign-born/dataset/tracts-2010TIGER-foreign-born.Rdata')
## Create list of data frames for each year and restrict to created
## foreign-born variables
dtas <- list(trt14_fb, trt15_fb, trt16_fb, trt17_fb)
regiondtas <- lapply(dtas, select.regionvars)
## Create single wide data frame with year appended to variable name
namelist <- lapply(14:17,
function(x) c(geovars, paste0(regionvars, x)))
regiondta <- mapply(setNames, regiondtas, namelist, SIMPLIFY = FALSE) %>%
reduce(left_join, by='GISJOIN')
regiondta$STATE <- regiondta$STATE.x
regiondta$COUNTY <- regiondta$COUNTY.x
regiondta <- regiondta[, -(grep('^STATE.+|^COUNTY.+', names(regiondta), perl=TRUE))]
## Write file containing wide dataset to CSV format
write.csv(regiondta, 'tracts/2010/tabular/foreign-born/dataset/tracts-2010TIGER-foreign-born.csv')