R/rename_nhgis_vars.R

Defines functions bg_rename

Documented in bg_rename

#' Rename NHGIS variables
#' Function to rename NHGIS variables to more descriptive names. Intended use is in a rename_all function, with the variable name fed as the string.
#'
#' @param year_val The selected year of NHGIS data; defaults 2019 for ACS 2015-2019.
#' @param string NHGIS variable name.
#'
#' @return More descriptive NHGIS variable name
#' @export
#'
#' @examples
bg_rename <- function(string, year_val = 2019){

  # browser()

  if (year_val == 2019){
    vals <- dplyr::case_when(grepl("ALWG[A-Z]001", string, ignore.case = T) ~ "educ_tot_bg",
                      grepl("ALWG[A-Z]002", string, ignore.case = T) ~  "educ_no_school",
                      grepl("ALWG[A-Z]003", string, ignore.case = T) ~  "educ_nurse_school",
                      grepl("ALWG[A-Z]004", string, ignore.case = T) ~  "educ_kindgar",
                      grepl("ALWG[A-Z]005", string, ignore.case = T) ~  "educ_1st_grade",
                      grepl("ALWG[A-Z]006", string, ignore.case = T) ~  "educ_2nd_grade",
                      grepl("ALWG[A-Z]007", string, ignore.case = T) ~  "educ_3rd_grade",
                      grepl("ALWG[A-Z]008", string, ignore.case = T) ~  "educ_4th_grade",
                      grepl("ALWG[A-Z]009", string, ignore.case = T) ~  "educ_5th_grade",
                      grepl("ALWG[A-Z]010", string, ignore.case = T) ~  "educ_6th_grade",
                      grepl("ALWG[A-Z]011", string, ignore.case = T) ~  "educ_7th_grade",
                      grepl("ALWG[A-Z]012", string, ignore.case = T) ~  "educ_8th_grade",
                      grepl("ALWG[A-Z]013", string, ignore.case = T) ~  "educ_9th_grade",
                      grepl("ALWG[A-Z]014", string, ignore.case = T) ~  "educ_10th_grade",
                      grepl("ALWG[A-Z]015", string, ignore.case = T) ~  "educ_11th_grade",
                      grepl("ALWG[A-Z]016", string, ignore.case = T) ~  "educ_12th_grade",
                      grepl("ALWG[A-Z]017", string, ignore.case = T) ~  "educ_hs_diploma",
                      grepl("ALWG[A-Z]018", string, ignore.case = T) ~  "educ_ged",
                      grepl("ALWG[A-Z]019", string, ignore.case = T) ~  "educ_somecoll_less1",
                      grepl("ALWG[A-Z]020", string, ignore.case = T) ~  "educ_somecoll_more1",
                      grepl("ALWG[A-Z]021", string, ignore.case = T) ~  "educ_associates",
                      grepl("ALWG[A-Z]022", string, ignore.case = T) ~  "educ_bachelors",
                      grepl("ALWG[A-Z]023", string, ignore.case = T) ~  "educ_masters",
                      grepl("ALWG[A-Z]024", string, ignore.case = T) ~  "educ_professional",
                      grepl("ALWG[A-Z]025", string, ignore.case = T) ~  "educ_doctorate",
                      grepl("ALWT[A-Z]001", string, ignore.case = T) ~  "lang_tot",
                      grepl("ALWT[A-Z]002", string, ignore.case = T) ~  "lang_eng_only",
                      grepl("ALWT[A-Z]003", string, ignore.case = T) ~  "lang_spanish",
                      grepl("ALWT[A-Z]004", string, ignore.case = T) ~  "lang_span_limeng",
                      grepl("ALWT[A-Z]005", string, ignore.case = T) ~  "lang_span_nolimeng",
                      grepl("ALWT[A-Z]006", string, ignore.case = T) ~  "lang_otherindoeuro",
                      grepl("ALWT[A-Z]007", string, ignore.case = T) ~  "lang_otherindoeuro_limeng",
                      grepl("ALWT[A-Z]008", string, ignore.case = T) ~  "lang_otherindoeuro_nolimeng",
                      grepl("ALWT[A-Z]009", string, ignore.case = T) ~  "lang_asiapacific",
                      grepl("ALWT[A-Z]010", string, ignore.case = T) ~  "lang_asiapacific_limeng",
                      grepl("ALWT[A-Z]011", string, ignore.case = T) ~  "lang_asiapacific_nolimeng",
                      grepl("ALWT[A-Z]012", string, ignore.case = T) ~  "lang_otherlang",
                      grepl("ALWT[A-Z]013", string, ignore.case = T) ~  "lang_otherlang_limeng",
                      grepl("ALWT[A-Z]014", string, ignore.case = T) ~  "lang_otherlang_nolimeng",
                      grepl("ALWV[A-Z]001", string, ignore.case = T) ~  "incpovratio_total",
                      grepl("ALWV[A-Z]002", string, ignore.case = T) ~  "incpovratio_under5",
                      grepl("ALWV[A-Z]003", string, ignore.case = T) ~  "incpovratio_599",
                      grepl("ALWV[A-Z]004", string, ignore.case = T) ~  "incpovratio_1124",
                      grepl("ALWV[A-Z]005", string, ignore.case = T) ~  "incpovratio_125149",
                      grepl("ALWV[A-Z]006", string, ignore.case = T) ~  "incpovratio_15184",
                      grepl("ALWV[A-Z]007", string, ignore.case = T) ~  "incpovratio_185199",
                      grepl("ALWV[A-Z]008", string, ignore.case = T) ~  "incpovratio_2more",
                      grepl("ALW0[A-Z]001", string, ignore.case = T) ~  "houseinc_total",
                      grepl("ALW0[A-Z]002", string, ignore.case = T) ~  "houseinc_less10k",
                      grepl("ALW0[A-Z]003", string, ignore.case = T) ~  "houseinc_1014",
                      grepl("ALW0[A-Z]004", string, ignore.case = T) ~  "houseinc_1519",
                      grepl("ALW0[A-Z]005", string, ignore.case = T) ~  "houseinc_2024",
                      grepl("ALW0[A-Z]006", string, ignore.case = T) ~  "houseinc_2529",
                      grepl("ALW0[A-Z]007", string, ignore.case = T) ~  "houseinc_3034",
                      grepl("ALW0[A-Z]008", string, ignore.case = T) ~  "houseinc_3539",
                      grepl("ALW0[A-Z]009", string, ignore.case = T) ~  "houseinc_4045",
                      grepl("ALW0[A-Z]010", string, ignore.case = T) ~  "houseinc_4549",
                      grepl("ALW0[A-Z]011", string, ignore.case = T) ~  "houseinc_5059",
                      grepl("ALW0[A-Z]012", string, ignore.case = T) ~  "houseinc_6074",
                      grepl("ALW0[A-Z]013", string, ignore.case = T) ~  "houseinc_7599",
                      grepl("ALW0[A-Z]014", string, ignore.case = T) ~  "houseinc_100124",
                      grepl("ALW0[A-Z]015", string, ignore.case = T) ~  "houseinc_125149",
                      grepl("ALW0[A-Z]016", string, ignore.case = T) ~  "houseinc_150199",
                      grepl("ALW0[A-Z]017", string, ignore.case = T) ~  "houseinc_200more",
                      grepl("ALW1[A-Z]001", string, ignore.case = T) ~  "medinc",
                      grepl("ALXM[A-Z]001", string, ignore.case = T) ~  "pubassist_total",
                      grepl("ALXM[A-Z]002", string, ignore.case = T) ~  "pubassist_yes",
                      grepl("ALXM[A-Z]003", string, ignore.case = T) ~  "pubassist_no",
                      grepl("ALX5[A-Z]001", string, ignore.case = T) ~  "percapinc",
                      grepl("ALUC[A-Z]001", string, ignore.case = T) ~ "race_tot",
                      grepl("ALUC[A-Z]002", string, ignore.case = T) ~ "race_white",
                      grepl("ALUC[A-Z]003", string, ignore.case = T) ~ "race_black",
                      grepl("ALUC[A-Z]004", string, ignore.case = T) ~ "race_aian",
                      grepl("ALUC[A-Z]005", string, ignore.case = T) ~ "race_asian",
                      grepl("ALUC[A-Z]006", string, ignore.case = T) ~ "race_nhpi",
                      grepl("ALUC[A-Z]007", string, ignore.case = T) ~ "race_other",
                      grepl("ALUC[A-Z]008", string, ignore.case = T) ~ "race_two",
                      grepl("ALUC[A-Z]009", string, ignore.case = T) ~ "race_two_incother",
                      grepl("ALUC[A-Z]010", string, ignore.case = T) ~ "race_two_three",
                      grepl("ALUK[A-Z]001", string, ignore.case = T) ~ "hispr_tot",
                      grepl("ALUK[A-Z]002", string, ignore.case = T) ~ "hispr_nothisp",
                      grepl("ALUK[A-Z]003", string, ignore.case = T) ~ "hispr_nothisp_white",
                      grepl("ALUK[A-Z]004", string, ignore.case = T) ~ "hispr_nothisp_black",
                      grepl("ALUK[A-Z]005", string, ignore.case = T) ~ "hispr_nothisp_aian",
                      grepl("ALUK[A-Z]006", string, ignore.case = T) ~ "hispr_nothisp_asian",
                      grepl("ALUK[A-Z]007", string, ignore.case = T) ~ "hispr_nothisp_nhpi",
                      grepl("ALUK[A-Z]008", string, ignore.case = T) ~ "hispr_nothisp_other",
                      grepl("ALUK[A-Z]009", string, ignore.case = T) ~ "hispr_nothisp_two",
                      grepl("ALUK[A-Z]010", string, ignore.case = T) ~ "hispr_nothisp_two_incother",
                      grepl("ALUK[A-Z]011", string, ignore.case = T) ~ "hispr_nothisp_two_three",
                      grepl("ALUK[A-Z]012", string, ignore.case = T) ~ "hispr_hisplat",
                      grepl("ALUK[A-Z]013", string, ignore.case = T) ~ "hispr_hisplat_white",
                      grepl("ALUK[A-Z]014", string, ignore.case = T) ~ "hispr_hisplat_black",
                      grepl("ALUK[A-Z]015", string, ignore.case = T) ~ "hispr_hisplat_aian",
                      grepl("ALUK[A-Z]016", string, ignore.case = T) ~ "hispr_hisplat_asian",
                      grepl("ALUK[A-Z]017", string, ignore.case = T) ~ "hispr_hisplat_nhpi",
                      grepl("ALUK[A-Z]018", string, ignore.case = T) ~ "hispr_hisplat_other",
                      grepl("ALUK[A-Z]019", string, ignore.case = T) ~ "hispr_hisplat_two",
                      grepl("ALUK[A-Z]020", string, ignore.case = T) ~ "hispr_hisplat_two_incother",
                      grepl("ALUK[A-Z]021", string, ignore.case = T) ~ "hispr_hisplat_two_three",
                      T ~ string)

    vals_moe_check <- dplyr::case_when(grepl(".+{4}E", string, ignore.case = T) ~ vals,
                                grepl(".+{4}M", string, ignore.case = T) ~ paste0(vals, "_moe"),
                                T ~ vals)

  }

  else if (year_val == 2018){
    vals <- dplyr::case_when(grepl("AJYP[A-Z]001", string, ignore.case = T) ~ "educ_tot_bg",
                      grepl("AJYP[A-Z]002", string, ignore.case = T) ~  "educ_no_school",
                      grepl("AJYP[A-Z]003", string, ignore.case = T) ~  "educ_nurse_school",
                      grepl("AJYP[A-Z]004", string, ignore.case = T) ~  "educ_kindgar",
                      grepl("AJYP[A-Z]005", string, ignore.case = T) ~  "educ_1st_grade",
                      grepl("AJYP[A-Z]006", string, ignore.case = T) ~  "educ_2nd_grade",
                      grepl("AJYP[A-Z]007", string, ignore.case = T) ~  "educ_3rd_grade",
                      grepl("AJYP[A-Z]008", string, ignore.case = T) ~  "educ_4th_grade",
                      grepl("AJYP[A-Z]009", string, ignore.case = T) ~  "educ_5th_grade",
                      grepl("AJYP[A-Z]010", string, ignore.case = T) ~  "educ_6th_grade",
                      grepl("AJYP[A-Z]011", string, ignore.case = T) ~  "educ_7th_grade",
                      grepl("AJYP[A-Z]012", string, ignore.case = T) ~  "educ_8th_grade",
                      grepl("AJYP[A-Z]013", string, ignore.case = T) ~  "educ_9th_grade",
                      grepl("AJYP[A-Z]014", string, ignore.case = T) ~  "educ_10th_grade",
                      grepl("AJYP[A-Z]015", string, ignore.case = T) ~  "educ_11th_grade",
                      grepl("AJYP[A-Z]016", string, ignore.case = T) ~  "educ_12th_grade",
                      grepl("AJYP[A-Z]017", string, ignore.case = T) ~  "educ_hs_diploma",
                      grepl("AJYP[A-Z]018", string, ignore.case = T) ~  "educ_ged",
                      grepl("AJYP[A-Z]019", string, ignore.case = T) ~  "educ_somecoll_less1",
                      grepl("AJYP[A-Z]020", string, ignore.case = T) ~  "educ_somecoll_more1",
                      grepl("AJYP[A-Z]021", string, ignore.case = T) ~  "educ_associates",
                      grepl("AJYP[A-Z]022", string, ignore.case = T) ~  "educ_bachelors",
                      grepl("AJYP[A-Z]023", string, ignore.case = T) ~  "educ_masters",
                      grepl("AJYP[A-Z]024", string, ignore.case = T) ~  "educ_professional",
                      grepl("AJYP[A-Z]025", string, ignore.case = T) ~  "educ_doctorate",
                      grepl("AJY2[A-Z]001", string, ignore.case = T) ~  "lang_tot",
                      grepl("AJY2[A-Z]002", string, ignore.case = T) ~  "lang_eng_only",
                      grepl("AJY2[A-Z]003", string, ignore.case = T) ~  "lang_spanish",
                      grepl("AJY2[A-Z]004", string, ignore.case = T) ~  "lang_span_limeng",
                      grepl("AJY2[A-Z]005", string, ignore.case = T) ~  "lang_span_nolimeng",
                      grepl("AJY2[A-Z]006", string, ignore.case = T) ~  "lang_otherindoeuro",
                      grepl("AJY2[A-Z]007", string, ignore.case = T) ~  "lang_otherindoeuro_limeng",
                      grepl("AJY2[A-Z]008", string, ignore.case = T) ~  "lang_otherindoeuro_nolimeng",
                      grepl("AJY2[A-Z]009", string, ignore.case = T) ~  "lang_asiapacific",
                      grepl("AJY2[A-Z]010", string, ignore.case = T) ~  "lang_asiapacific_limeng",
                      grepl("AJY2[A-Z]011", string, ignore.case = T) ~  "lang_asiapacific_nolimeng",
                      grepl("AJY2[A-Z]012", string, ignore.case = T) ~  "lang_otherlang",
                      grepl("AJY2[A-Z]013", string, ignore.case = T) ~  "lang_otherlang_limeng",
                      grepl("AJY2[A-Z]014", string, ignore.case = T) ~  "lang_otherlang_nolimeng",
                      grepl("AJY4[A-Z]001", string, ignore.case = T) ~  "incpovratio_total",
                      grepl("AJY4[A-Z]002", string, ignore.case = T) ~  "incpovratio_under5",
                      grepl("AJY4[A-Z]003", string, ignore.case = T) ~  "incpovratio_599",
                      grepl("AJY4[A-Z]004", string, ignore.case = T) ~  "incpovratio_1124",
                      grepl("AJY4[A-Z]005", string, ignore.case = T) ~  "incpovratio_125149",
                      grepl("AJY4[A-Z]006", string, ignore.case = T) ~  "incpovratio_15184",
                      grepl("AJY4[A-Z]007", string, ignore.case = T) ~  "incpovratio_185199",
                      grepl("AJY4[A-Z]008", string, ignore.case = T) ~  "incpovratio_2more",
                      grepl("AJY9[A-Z]001", string, ignore.case = T) ~  "houseinc_total",
                      grepl("AJY9[A-Z]002", string, ignore.case = T) ~  "houseinc_less10k",
                      grepl("AJY9[A-Z]003", string, ignore.case = T) ~  "houseinc_1014",
                      grepl("AJY9[A-Z]004", string, ignore.case = T) ~  "houseinc_1519",
                      grepl("AJY9[A-Z]005", string, ignore.case = T) ~  "houseinc_2024",
                      grepl("AJY9[A-Z]006", string, ignore.case = T) ~  "houseinc_2529",
                      grepl("AJY9[A-Z]007", string, ignore.case = T) ~  "houseinc_3034",
                      grepl("AJY9[A-Z]008", string, ignore.case = T) ~  "houseinc_3539",
                      grepl("AJY9[A-Z]009", string, ignore.case = T) ~  "houseinc_4045",
                      grepl("AJY9[A-Z]010", string, ignore.case = T) ~  "houseinc_4549",
                      grepl("AJY9[A-Z]011", string, ignore.case = T) ~  "houseinc_5059",
                      grepl("AJY9[A-Z]012", string, ignore.case = T) ~  "houseinc_6074",
                      grepl("AJY9[A-Z]013", string, ignore.case = T) ~  "houseinc_7599",
                      grepl("AJY9[A-Z]014", string, ignore.case = T) ~  "houseinc_100124",
                      grepl("AJY9[A-Z]015", string, ignore.case = T) ~  "houseinc_125149",
                      grepl("AJY9[A-Z]016", string, ignore.case = T) ~  "houseinc_150199",
                      grepl("AJY9[A-Z]017", string, ignore.case = T) ~  "houseinc_200more",
                      grepl("AJZA[A-Z]001", string, ignore.case = T) ~  "medinc",
                      grepl("AJZV[A-Z]001", string, ignore.case = T) ~  "pubassist_total",
                      grepl("AJZV[A-Z]002", string, ignore.case = T) ~  "pubassist_yes",
                      grepl("AJZV[A-Z]003", string, ignore.case = T) ~  "pubassist_no",
                      T ~ string)

    vals_moe_check <- dplyr::case_when(grepl(".+{4}E", string, ignore.case = T) ~ vals,
                                grepl(".+{4}M", string, ignore.case = T) ~ paste0(vals, "_moe"),
                                T ~ vals)

  }

  return(vals_moe_check)

}
dpowerstp/leafletwrappers documentation built on Sept. 4, 2022, 10:19 a.m.