pipeline_miami/config/covariates.yaml
Served verbatim from the project repository. Internal working document conventions apply: documents may reference file paths, branch names, and findings-ledger anchors from the repo.
# Covariates for the residual-z engine (pipeline_miami/analysis/residual_z.py)
# and, with the same numeric features, the KNN peer groups (decision M.9).
# Miami-Dade is 75% Hispanic, 17% Black, 6% White, 1% Asian (findings.md M.7):
# the informative axes are Black vs Hispanic share, English-learner share,
# economic disadvantage, and school size / choice status.
#
# Every covariate is read for the SAME YEAR as the outcome: race shares from
# FLDOE's race file (2018-19, 2021-22 → 2025-26; suppressed cells allocated
# per findings F.15), pct_ell_lower_bound from the ELL membership file, pct_econ_disadv
# from the School Grades file (School Grades years only), enrollment from
# the by-grade file. Years without a full covariate row are not fitted.
numeric:
- key: pct_black
- key: pct_hispanic
- key: pct_white # low variance; kept for cross-city comparability
# Suppressed LY cells have bounded counts, not observed zeros. The baseline
# uses the explicitly named lower endpoint; the engine also refits with
# pct_ell_upper_bound on the same schools and publishes that sensitivity.
- key: pct_ell_lower_bound
- key: pct_econ_disadv # FLDOE "% economically disadvantaged" (NSLP codes incl. CEP multiplier); ordinal use
- key: enrollment_oct
transform: log # log enrollment (as in the peer-group features)
categorical:
- key: sector # district / charter (also a hard filter in peer groups; tested in the ablation)
- key: magnet # whole-school magnet or not
- key: level # Elementary / K-8 / Middle / High / 6-12 / K-12 / Combination