alarm-redist / fifty-states

Redistricting analysis for all 50 U.S. states
https://alarm-redist.github.io/fifty-states/
Other
9 stars 7 forks source link

2020 Kentucky Congressional Districts #120

Closed kevpwang closed 2 years ago

kevpwang commented 2 years ago

Redistricting requirements

In Kentucky, under the Criteria and Standards for Congressional Redistricting adopted by Interim Joint Committee on State Government’s Redistricting Subcommittee in 1991, districts must:

  1. be contiguous
  2. have equal populations
  3. be geographically compact
  4. preserve county and municipality boundaries as much as possible
  5. preserve communities of interest as much as possible

Interpretation of requirements

We enforce a maximum population deviation of 0.5%. We use a pseudo-county constraint described below which attempts to mimic the norms in Kentucky of generally preserving county, city, and township boundaries.

Data Sources

Data for Kentucky comes from the ALARM Project's 2020 Redistricting Data Files.

Pre-processing Notes

No manual pre-processing decisions were necessary.

Simulation Notes

We sample 8,000 districting plans for Kentucky across two independent runs of the SMC algorithm, and then thin the sample down to 5,000 plans. We use a pseudo-county constraint to limit the county and municipality (i.e. city and township) splits. Municipality lines are used in Jefferson County, which has a population larger than the target population for a congressional district.

Validation

validation_20220622_1644

SMC: 5,000 sampled plans of 6 districts on 3,693 units
`adapt_k_thresh`=0.985 • `seq_alpha`=0.5
`est_label_mult`=1 • `pop_temper`=0

Plan diversity 80% range: 0.46 to 0.78

R-hat values for summary statistics:
   pop_overlap      total_vap       plan_dev      comp_edge    comp_polsby       pop_hisp      pop_white 
     1.0026795      1.0056163      0.9998512      1.0014006      1.0089357      1.0038177      1.0001899 
     pop_black       pop_aian      pop_asian       pop_nhpi      pop_other        pop_two       vap_hisp 
     1.0020155      1.0026037      1.0004992      1.0002646      1.0006421      1.0014589      1.0018988 
     vap_white      vap_black       vap_aian      vap_asian       vap_nhpi      vap_other        vap_two 
     1.0006832      1.0024479      1.0016443      1.0004699      1.0001827      1.0000130      1.0019312 
pre_16_rep_tru pre_16_dem_cli uss_16_rep_pau uss_16_dem_gra         arv_16         adv_16         arv_18 
     1.0013822      1.0028450      1.0006595      1.0144964      1.0006365      1.0013169             NA 
        adv_18         arv_20         adv_20  county_splits    muni_splits            ndv            nrv 
            NA             NA             NA      1.0061338      1.0034688      1.0013169      1.0006365 
       ndshare          e_dvs         pr_dem          e_dem          pbias           egap 
     1.0021110      1.0022326            NaN      1.0009358      1.0010513      1.0013598 
Error in if (any(rhats >= 1.05)) { : 
  missing value where TRUE/FALSE needed

Checklist

@CoryMcCartan

kevpwang commented 2 years ago

@CoryMcCartan The lack of KY VEST data for 2018 & 2020 seems to be causing problems for summary(), but the r-hats look fine.