Life Expectancy Crosswalk from 2010 to 2020 Census Tracts (Austin LTD/FULL Universe)
Author
Kaitlan Wong
Overview
This analysis converts 2015 life expectancy estimates originally reported for 2010 census tracts to the 2020 census tract geography used in the City of Austin Equity Index. Because tract boundaries changed between 2010 and 2020, a tract relationship file was used to allocate 2010-tract life expectancy to 2020 tracts using areal-weighted interpolation. For each 2020 tract, life expectancy was calculated as the weighted mean of overlapping 2010 tracts based on land-area proportions. The resulting estimates were then restricted to the Austin limited and full-purpose tract universe (including tracts intersecting city boundaries by at least 10%). This process produces normalized 2020-tract life expectancy values aligned to the study area geography, without imputation for tracts lacking source data coverage.
Sources
Dataset
Description
Source
USALEEP Life Expectancy (2010 tracts)
Census-tract life expectancy estimates (2010 geography)
── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
✔ dplyr 1.1.4 ✔ readr 2.1.5
✔ forcats 1.0.1 ✔ stringr 1.5.2
✔ ggplot2 4.0.0 ✔ tibble 3.3.0
✔ lubridate 1.9.4 ✔ tidyr 1.3.1
✔ purrr 1.1.0
── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
✖ dplyr::filter() masks stats::filter()
✖ dplyr::lag() masks stats::lag()
ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
# load datale_data <-read_csv("TX_A.csv")
Rows: 4709 Columns: 7
── Column specification ────────────────────────────────────────────────────────
Delimiter: ","
chr (2): CNTY2KX, TRACT2KX
dbl (5): Tract ID, STATE2KX, e(0), se(e(0)), Abridged life table flag
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
Rows: 9135 Columns: 16
── Column specification ────────────────────────────────────────────────────────
Delimiter: ","
chr (6): NAMELSAD_TRACT_20, MTFCC_TRACT_20, FUNCSTAT_TRACT_20, NAMELSAD_TRA...
dbl (10): OID_TRACT_20, GEOID_TRACT_20, AREALAND_TRACT_20, AREAWATER_TRACT_2...
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
# used backticks for Tract ID because of the space in the column namemerged_data <- relation_tracts_2 %>%left_join(le_data, by =c("GEOID_TRACT_10"="Tract ID"))head(merged_data)
Rows: 250 Columns: 4
── Column specification ────────────────────────────────────────────────────────
Delimiter: ","
chr (1): NAMELSAD
dbl (3): GEOID_clean, NAME, pct_in_austin
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.