Application 1: district-level predictions
Use minorep() when the adjusted racial margin of victory
(M) and minority electorate share (C) are
known for one or more districts. Both are percentages from 0 to 100.
Motivating example: influence districts (Online Appendix C.1)
Louisiana redistricting disputes raised the question of whether districts with about 20% minority voters could elect minority candidates under strongly polarized voting. The scenario in Online Appendix C.1 of Atsusaka (2021) predicts a probability close to zero under those voting assumptions.
A second example considers a district with 40% minority voters.
Assuming all minority voters support the minority candidate and 30% of
White voters do so, sim_M() gives M = 58.
Holding that margin fixed, minorep() predicts about a 3.3%
chance with equal turnout, about 91.1% when minority turnout is 50% and
White turnout is 40%, and almost zero when those turnout rates are
reversed.
influence_M <- sim_M(C = 40, coethnic = 1, crossover = 0.3)
influence_predictions <- c(
"Equal turnout" = minorep(M = influence_M, C = 40),
"Higher minority turnout" = minorep(
M = influence_M, C = 40, gap = c(0.5, 0.4)
),
"Lower minority turnout" = minorep(
M = influence_M, C = 40, gap = c(0.4, 0.5)
)
)
round(influence_predictions, digits = 4)
#> Equal turnout Higher minority turnout Lower minority turnout
#> 0.0334 0.9108 0.0000The same district composition can therefore produce very different
predictions. This comparison holds past performance (M)
fixed while changing turnout in the election being predicted. All
probabilities are conditional on the supplied assumptions, and this
comparison alone does not establish legal vote dilution. See Application 2 for
constructing M.
Predicting several districts
M <- c(20, 50, 30)
C <- c(40, 70, 85)
prediction <- minorep(M = M, C = C)
round(prediction, digits = 4)
#> [1] 0.0000 1.0000 0.6906The result contains one probability per district.
minorep() returns full-precision values, so retain
prediction rather than its rounded display for later
analysis.
Adjusting for turnout differences
If the minority and White turnout rates are 0.5 and 0.6,
respectively, provide them in that order with gap. Rates
are proportions, not percentages.
prediction_with_gap <- minorep(
M = M,
C = C,
gap = c(0.5, 0.6)
)
round(prediction_with_gap, digits = 4)
#> [1] 0.0000 1.0000 0.4039The adjustment changes the effective minority share of the electorate before the model calculates the probability. Use turnout rates that match the election or scenario under study.