diff --git a/changelog.d/us-support-mix-bakeoff.added.md b/changelog.d/us-support-mix-bakeoff.added.md new file mode 100644 index 0000000000..8f91c1e707 --- /dev/null +++ b/changelog.d/us-support-mix-bakeoff.added.md @@ -0,0 +1 @@ +Add a support-mix bake-off (tools/bakeoff_us_support_mix.py, us_runtime/support_mix.py): CPS years vs ACS rows vs CPS location clones at fixed household budgets, calibrated with the production solver and scored on the hash-split holdout; memo in docs/us-support-mix-bakeoff.md. diff --git a/docs/us-support-mix-bakeoff.md b/docs/us-support-mix-bakeoff.md new file mode 100644 index 0000000000..f7efc78d91 --- /dev/null +++ b/docs/us-support-mix-bakeoff.md @@ -0,0 +1,522 @@ +# US support mix: CPS years vs ACS rows at a fixed household budget + +Status: the bake-off ran from 2026-09-28 to 2026-09-30 on main `bda72cb02`, +policyengine-us 2.2.1 and the pinned Chronicle feed `b8543739` (32,842 +targets), and scored all 60 calibrations (30 arms × 2 products). Receipts: +[`experiments/us-support-mix-bakeoff-20260930/`](../experiments/us-support-mix-bakeoff-20260930/). +Tool: [`tools/bakeoff_us_support_mix.py`](../tools/bakeoff_us_support_mix.py); +primitives and invariants: +[`us_runtime/support_mix.py`](../packages/microcosm-build/src/microcosm/build/us_runtime/support_mix.py). + +## Question + +Max, 2026-09-27: the ACS matters mainly as variation in the support, meaning +more distinct households for calibration to choose among. Pooling more CPS +years adds support another way, at full CPS richness. Cloning CPS households to +new locations adds rows that differ only in geography. At a household budget we +can afford to build and serve, which mix gives the best held-out accuracy, for +the national compact file and for the CD and county local file? + +## Verdict + +The memo ranks arms by the release's own objective on held-out targets: the +loss-weighted capped relative error over every held-out CPS-native target +(income components, tax items, program receipt) at a level, with the release's +fixed concept-budget weights. Per-dimension columns show the trade-offs. + +- **National compact file: the newest three CPS years plus ACS to 300,000 + source households.** With 2022–2024 that comes to 168,852 CPS households plus + 131,148 ACS households, 484,080 physical rows (+37% over the three-year CPS + file's 352,932). Against the CPS-only file, as means over three ACS draws: + - held-out state CPS-native error falls from 0.119 to 0.113 (draw SD + 0.0003) and district error from 0.353 to 0.291; + - state income components improve (0.250 to 0.224), state tax items get + worse (0.103 to 0.113), and state program receipt does not measurably + change (0.208 against 0.198, draw SD 0.014); + - every ACS-native level improves (district 0.236 to 0.188, county 0.307 + to 0.259). + + The recommendation stops at 300k to hold down build and serving cost. Larger + ACS fills keep lowering district error (0.291, 0.266, 0.244 at 300k, 600k, + 1.2M). They leave state error flat at 300k and 1.2M (0.113) and slightly + worse at 600k (0.115), edge state tax items up (0.113, 0.116, 0.118) and do + not help state program receipt (0.198, 0.225, 0.239; the 600k and 1.2M arms + each have one draw, and only the 1.2M gap exceeds draw noise). The 600k 50/50 + fill scores best at state level (0.111; income 0.213, tax items 0.112, + program receipt 0.187) with 1,019,084 rows, 2.1 times the recommendation's. + Against one CPS year plus ACS to 300k, three years buy state income (0.249 to + 0.224) and tax items (0.130 to 0.113) with ACS-native accuracy (state 0.086 + to 0.110, district 0.166 to 0.188). The recommendation puts the CPS-native + gains first; if ACS-native accuracy matters as much for the national file, + one year plus ACS offers the alternative. If state tax items and serving cost + outweigh everything else, the three-year CPS-only file wins. + +- **CD and county local file: the newest three CPS years plus ACS households to + 1.2M source households, with no CPS location clones.** That comes to + 1,384,080 physical rows, 13% fewer than today's 1,588,854-row ACS local file. + At 1.2M: + - held-out district CPS-native error ties the clones (0.169 against 0.170) at + 55% of their rows, and state error falls below theirs (0.112 against + 0.114); + - ACS-native error runs 44% below the clones' in districts (0.141 against + 0.253) and 31% below in counties (0.174 against 0.253); + - the clones, and the CPS-only file, do better on state program receipt + (0.218 and 0.220 against 0.256) and state tax items (0.096 and 0.101 + against 0.117). The 50/50 fill at 600k splits the difference (program + receipt 0.243, tax items 0.096, district ACS-native 0.209). + + Against an ACS-only file of the same size (today's local file holds 57,240 + CPS rows plus every ACS household), the three CPS years lower state + CPS-native error from 0.120 to 0.112, state program receipt from 0.318 to + 0.256 and state tax items from 0.127 to 0.117, and do not raise ACS-native + error. One CPS year instead of three saves 123k rows (9%) at 1.2M. There the + data do not separate them on CPS-native measures: district error ties (0.169 + each), and the state gaps (0.116 against 0.112; tax items 0.123 against + 0.117; program receipt 0.278 against 0.256, single draws) sit within the + one-year arms' draw noise, or for state error at its edge. One year does + better on ACS-native state and district measures (0.072 and 0.136 against + 0.078 and 0.141). Three years win at 300k, where each has three draws: + clearly on state error (0.119 against 0.112) and tax items (0.137 against + 0.103), and just beyond draw noise on program receipt (0.288 against 0.237). + The three-year choice rests on that, on the national evidence below, and on + the local file sharing the national file's CPS support. + +- **More CPS years improve CPS-native measures and cost ACS-native ones.** + Within a budget, each CPS year displaces ACS households. In the national file + at 300k, one year against three (three draws each): state income 0.249 + against 0.224 and tax items 0.130 against 0.113, both well beyond draw noise; + program receipt 0.241 against 0.198 falls within the one-year arms' draw + noise (SD 0.041), and so does the loss-weighted state error (0.117 against + 0.113, SD 0.002). ACS-native error rises (state 0.086 to 0.110, district + 0.166 to 0.188; county level at 0.255 and 0.259). The local file at 300k + shows the same trade more strongly: tax items (0.137 to 0.103) and program + receipt (0.288 to 0.237) improve, state income holds level, and ACS-native + error rises by a third or more (state 0.080 to 0.110, district 0.153 to + 0.204). At 1.2M the trade shrinks (see above). Income years 2020 and 2021 + pass the response-quality check, so the next arm to run pools five years; + this bake-off did not run it (see Follow-ups). + +- **Clones add geography and little else.** In the national file they leave + every state measure where the CPS-only file had it. In both files they + improve district measures slowly (national-file district CPS-native error + 0.353, then 0.332 at 300k) and household ACS-native measures barely + (local-file county 0.299, then 0.263 and 0.253 at 600k and 1.2M), at 1.3 to + 2.0 times the physical rows of an ACS fill of the same budget (1.3 to 1.8 + for three-year clones). + +This matches the design note's reasoning. ACS rows carry real variation in +what the ACS observes, so income components (the ACS records wages, +self-employment, Social Security, retirement and interest, dividend and rental +income), housing and local geography improve as ACS rows enter. ACS rows +draw program receipt from CPS donors: beside three CPS years, state program +receipt error holds level at 131k ACS households, turns clearly worse by 1.2M +(0.239), and reaches 0.303 for ACS alone at 300k. + +## Results + +Every column reports capped relative error on held-out targets, `min(|est − +target| / max(|target|, 1), 1)`; lower is better. The "CPS-native" columns take +the loss-weighted mean over every held-out CPS-native target at the level; the +per-dimension columns take plain means. "ACS-native" averages households, owner +and renter households, contract rent, real-estate taxes and household +population against the ACS 2024 1-year tables; +`acs_native_by_level_measure.csv` adds age bands, which count group-quarters +people only the ACS rows have. The Rows column counts physical household rows +(a CPS household carries its PUF tax-detail clone rows); ESS takes Kish's +formula over distinct households (each ASEC housing unit counts once across +rotation years, PUF rows and clones). The "3 draws" rows average three disjoint +ACS draws; each other row comes from one draw. `memo_tables.py` builds the +tables from `dimensions_by_arm.csv`. + +### National product (4,828 train-role national and state targets) + +| Arm | Rows | ESS | CPS-native, state | CPS-native, CD | Income, state | Tax items, state | Program receipt, state | Age (PEP), state | ACS-native state / CD / county | +|---|---|---|---|---|---|---|---|---|---| +| CPS 2022–24 only | 352,932 | 44,943 | 0.119 | 0.353 | 0.250 | 0.103 | 0.208 | 0.169 | 0.133 / 0.236 / 0.307 | +| CPS 2022–24 + clones to 300k | 627,089 | 44,984 | 0.119 | 0.332 | 0.250 | 0.103 | 0.208 | 0.169 | 0.133 / 0.226 / 0.283 | +| CPS 2024 + ACS to 300k (3 draws) | 361,228 | 64,090 | 0.117 | 0.300 | 0.249 | 0.130 | 0.241 | 0.159 | 0.086 / 0.166 / 0.255 | +| CPS 2023–24 + ACS to 300k | 422,543 | 65,908 | 0.119 | 0.288 | 0.236 | 0.124 | 0.217 | 0.171 | 0.097 / 0.175 / 0.251 | +| **CPS 2022–24 + ACS to 300k (3 draws)** | 484,080 | 69,353 | 0.113 | 0.291 | 0.224 | 0.113 | 0.198 | 0.163 | 0.110 / 0.188 / 0.259 | +| ACS only, 300k | 300,000 | 60,492 | 0.132 | 0.289 | 0.261 | 0.151 | 0.303 | 0.176 | 0.096 / 0.172 / 0.269 | +| CPS 2022–24 + 50/50 to 600k | 1,019,084 | 77,830 | 0.111 | 0.272 | 0.213 | 0.112 | 0.187 | 0.163 | 0.113 / 0.182 / 0.232 | +| CPS 2022–24 + ACS to 600k | 784,080 | 113,041 | 0.115 | 0.266 | 0.221 | 0.116 | 0.225 | 0.159 | 0.097 / 0.163 / 0.227 | +| CPS 2022–24 + ACS to 1.2M | 1,384,080 | 222,920 | 0.113 | 0.244 | 0.217 | 0.118 | 0.239 | 0.166 | 0.081 / 0.135 / 0.189 | +| SD across 3 draws (300k, 2022–24) | | | 0.000 | 0.002 | 0.007 | 0.002 | 0.014 | 0.005 | 0.001 / 0.001 / 0.002 | + +### Local product (adds the 27,148 district-classified targets and district household population) + +| Arm | Rows | ESS | CPS-native, state | CPS-native, CD | Income, state | Tax items, state | Program receipt, state | Age (PEP), state | ACS-native state / CD / county | +|---|---|---|---|---|---|---|---|---|---| +| CPS 2022–24 only | 352,932 | 52,074 | 0.116 | 0.209 | 0.217 | 0.101 | 0.220 | 0.154 | 0.134 / 0.263 / 0.299 | +| CPS 2022–24 + clones to 600k | 1,254,039 | 54,305 | 0.114 | 0.179 | 0.211 | 0.097 | 0.221 | 0.175 | 0.134 / 0.256 / 0.263 | +| CPS 2022–24 + clones to 1.2M | 2,508,197 | 54,292 | 0.114 | 0.170 | 0.214 | 0.096 | 0.218 | 0.183 | 0.135 / 0.253 / 0.253 | +| CPS 2022–24 + 50/50 to 600k | 1,019,084 | 91,100 | 0.111 | 0.173 | 0.226 | 0.096 | 0.243 | 0.176 | 0.113 / 0.209 / 0.232 | +| CPS 2022–24 + ACS to 600k | 784,080 | 150,595 | 0.115 | 0.179 | 0.228 | 0.109 | 0.267 | 0.168 | 0.092 / 0.166 / 0.207 | +| **CPS 2022–24 + ACS to 1.2M** | 1,384,080 | 276,474 | 0.112 | 0.169 | 0.206 | 0.117 | 0.256 | 0.184 | 0.078 / 0.141 / 0.174 | +| CPS 2024 + ACS to 1.2M | 1,261,228 | 281,840 | 0.116 | 0.169 | 0.204 | 0.123 | 0.278 | 0.188 | 0.072 / 0.136 / 0.174 | +| ACS only, 1.2M | 1,200,000 | 272,607 | 0.120 | 0.170 | 0.206 | 0.127 | 0.318 | 0.193 | 0.084 / 0.146 / 0.180 | +| SD across 3 draws (300k, 2022–24) | | | 0.001 | 0.002 | 0.007 | 0.002 | 0.006 | 0.002 | 0.000 / 0.002 / 0.000 | + +We read differences under about twice the draw SD as noise. The one-year arms +vary more across draws than the three-year arms (program receipt SD 0.041 +national and 0.024 local at 300k; `replicate_spread.csv`). Too few to rank +arms, the 36 national-level held-out targets stay out of the tables; +`holdout_by_dimension_level.csv` has them. + +**Calibration worsens held-out state age cells, in every arm.** Across all 60 +calibrations, the mean capped error on held-out Census PEP state age bands +rises from 0.066 at the starting weights to 0.168 after calibration (0.131 to +0.193). The design weights already carry Census age controls, and the solve +trades them away for its training targets. The tables report the age column but +rank no arm on it: it does separate arms (national 0.159 to 0.176, draw SD +0.005), but every arm pays the trade, and its size says more about the +calibration objective than about the support (see Follow-ups). + +**Report only: SPM poverty** (no arm calibrates to it or gates on it). In the +national product the SPM rate comes to 12.8% for the three-year CPS file, 12.2% +for the recommended 300k mix (seed 0) and 12.3% for ACS only, and child SPM +poverty to 14.7%, 13.6% and 12.3%. These rates include the ACS group-quarters +persons still in the support, whom Census places outside the SPM universe; the +tool now leaves them out, but these rates predate that fix. ACS rows' SPM +resources rest on imputed CPS-only inputs, so the differences reflect the +imputation as much as the support. + +## Cost + +| | Measured | +|---|---| +| Engine pass (all 419 concepts), wall time per household on the shared host | CPS parts 7.7 to 57 ms (median 26); ACS parts 7.5 to 226 ms (median 39); 5,000-household engine batches | +| Engine pass peak RSS | 50,000-household CPS shards 5.8 to 15.6 GB; up to 22.7 GB per ACS process (a running maximum over its parts) | +| Calibration, national recommendation (484k rows, 1,500 epochs) | 22 min, 6.2 GB peak | +| Calibration, local recommendation (1.38M rows, 1,500 epochs) | 36 min, 15.9 GB peak | +| Calibration, local clones to 1.2M (2.51M rows) | 55 to 210 min, 18 to 28 GB peak | +| Serving | proportional to physical rows: 484k national (+37% over CPS only), 1.38M local (−13% against today's local file) | + +We measured wall times with the host at load 10 to 400, so they compare only +within this run. Training loss still fell a median 5.2% of its epoch-1,000 +value between epochs 1,000 and 1,500 (`arms.csv` has `loss_1000` and +`loss_final`); every arm had the same 1,500-epoch budget. The tool first +scored 22 arms before scoring covered every level; for those, `arms.csv` +carries the solve peak from the grid log and no wall time (`runtime_restored` +names the log line). We added each arm receipt's `inputs` digests after its +solve, once the tool recorded them, from the files then in place, and each +receipt's `inputs_note` said so. We likewise added source-h5, concept-spec +and null-fill-summary digests afterwards to the work copies of the +concept-part receipts, from `shard.json`, `concept_specs.pkl` and the +`partcheck` below (`*_note` fields). The copies under `materialize/` predate +those digests; on 2026-09-30 their numerical fields matched the work +copies'. + +## Design + +### Arms + +Budgets count **source households**, as in the design note: each ASEC +household-year or ACS household counts once, so the 2022–2024 ASEC pool holds +168,852. A CPS source household keeps its PUF tax-detail clone rows from the +Route A pipeline, so it spans two or three physical rows. The tables report +physical rows separately, and physical rows drive engine and serving cost. + +Each arm keeps every household of its CPS income years and fills the rest of +the budget with: + +- **ACS** households (`acs100`): the first *n* in a salted hash order of + `SERIALNO`, so a larger arm's ACS households always include a smaller arm's; +- **CPS location clones** (`acs000`): copies of the arm's own CPS households, + each physical row drawing a new (district, county) within its state in + proportion to ACS household weight (leaving out group-quarters rows), the + way Route A draws rows independently. A clone keeps its source row's engine + values, so anything that varies by county within a state (ACA benchmark + premiums by rating area) comes from the origin county; +- a 50/50 mix (`acs050`, at 600k only). + +| Budget | CPS years | Fills | +|---|---|---| +| natural size | 2024; 2023–24; 2022–24 | none | +| 300k, 600k, 1.2M | 2024; 2023–24; 2022–24 | ACS; clones | +| 300k, 600k, 1.2M | none | ACS only | +| 600k | 2024; 2022–24 | 50/50 | +| 300k | 2024; 2022–24 | ACS, replicates 1 and 2 | + +That makes 30 arms. Each arm gets two calibrations, one per product: + +- **national compact**: the release's `national_state` surface (5,683 + usable national and state targets, 4,828 of them train-role after the + split), with loss weights the tool computes on that surface as the release + does; +- **local**: the full surface, which adds 27,148 targets the release + classifies as district targets (24,340 district-level, plus 2,808 state + and national totals from the SOI district file), plus district household + population (ACS B25008). The ACS local release trains district population + from its PUMA ladder instead; this bake-off uses household population so + that the district total neither counts nor moves group-quarters rows, which + only the ACS has. + +Replicate arms take the next disjoint blocks of the one fixed ACS order, so +they draw independently; seed-0 arms nest across budgets. Group-quarters +households (11.96% of ACS records) stay in the ACS side, as in the ACS local +release; the CPS has none. The bake-off drops the 5,246 ACS records (0.34%, all +group quarters) whose SPM unit has no member the pinned engine counts as an +adult: policyengine-us 2.2.1 refuses them, and Census puts ACS group quarters +outside the SPM universe (`us_runtime/spm_universe_source.py`). `shard` and +`spm-flags` compute the flag with the engine's rule (`spm_flags.json`). + +**This bake-off ran no five-year arm.** Income years 2020 and 2021 pass the +response-quality check below, but main pinned ASEC role and person sources only +for 2022–2024 when this ran, and the base and release stages that would enrich +two more years peaked at 72–80 GB in recorded runs, beyond this task's 60 GB +ceiling, while a Route A release held the machine. The tool takes more years as +more rows, so a rerun can add a five-year arm once a Route A export with those +years exists (see Follow-ups). The same holds for the newest three years +(2023–2025): main pinned the 2025 ASEC on 2026-09-29 +(PolicyEngine/microcosm#1044), after the Route A export these CPS rows come +from. + +### Superpool: one engine pass, many arms + +Rerunning the pipeline per arm would cost hours and 70–94 GB each. Instead +the bake-off computes every household's target contributions once and +reweights subsets: + +- **CPS rows**: the Route A 310842b release export (352,932 physical rows: + income years 2022–2024, PUF clones, all enrichment stages), with design + weights from its base. The run failed only its post-export smoke gate. +- **ACS rows**: the 2026-09-23 ACS local staging (1,531,614 ACS 2024 1-year + households, whose CPS-only inputs the staging transferred from the + 57,240-household receipt-qualified donor spine). The bake-off leaves out + the staging's own 57,240 donor rows. The staging carries + `is_spm_independent_minor_role` as all-null on ACS rows; the tool drops the + column so the engine derives the role from its formula + (`is_household_head | is_household_spouse`), as the production ACS local + build did. + +Both carry the same PolicyEngine input schema (141 and 140 person inputs). +Imputations stay the same across arms: an ACS row's CPS-only variables come +from the same donor spine whatever CPS years the arm pools. The bake-off +therefore measures the support effect while holding donor quality constant; +in a real rebuild, a one-year arm would also have a thinner donor pool. + +**Concepts.** The release materializer builds each state or district +target's household column as a geography-free value times an indicator of +the household's own state or district +(`_base_simulation_household_columns`). `compile` groups the 32,842 targets +into 419 such concepts, and `materialize` runs the release tool's own +`_materialize_target_frame` on them in household shards. The tool then +assembles every arm's target matrix, sparse, as concept value × geography +mask. `diffcheck` verifies the identity on real rows (see Evidence). The 11 +JCT tax-expenditure targets need reform simulations, so every arm leaves them +out. + +### Holdout + +The US holdout ("Port the UK holdout to US release targets") had not merged +when this ran. The bake-off mirrors its pending spec: it hashes +`salt + "\x1f" + key` with SHA-256, seals a group whose hash on the sealed +salt falls below 0.05, and otherwise holds the group out if its hash on the +holdout salt falls below 0.10. Tests check the hash against draws from the +port branch's own implementation (`PORT_BRANCH_FIXTURES`); the group-key and +role rules follow the port session's written spec, since that session had +not yet written its module. District children take their state parent's +key, so holding out a state total holds out all its districts; the split +draws national and state targets independently, so trained state targets +can still pin a held-out national total. Keys drop vintage tokens. The +bake-off does not mirror the spec's pins, which force some groups to train, +so this split differs from the eventual release split for pinned groups. No +arm trains on or scores a sealed target. + +On the pinned feed: 27,711 train, 3,470 holdout (36 national, 787 state, +2,647 district), 1,661 sealed. + +**ACS-native truth.** The registry has no housing targets and no county +targets. The bake-off scores ACS-native dimensions against the ACS 2024 +1-year table-based summary file (B25003 tenure, B25060 and B25065 aggregate +rent, B25090 aggregate real-estate taxes, B25008 and B01003 population, +B01001 age and sex) at national, state, district (119th Congress) and county +(the 850 counties the 1-year file covers). No arm calibrates to them, except +to district household population (B25008) in the local product. These +tables come from the same ACS year as the ACS rows; the PUMS subsamples the +published sample, and ACS rows take district and county as draws within +their PUMA, so ACS rows do not reproduce the tables by construction, but +they share the published sample's sampling error. ACS-native scores +therefore measure consistency with the published ACS. + +### Calibration + +Every arm uses the production optimizer, `microcosm.calibrate.solve._optimize`, +with the fiscal release's optimizer settings: Adam on log-weights, learning +rate 0.02, capped relative error (cap 1.0), conserved mass, max weight ratio 5, +and the release's concept-budget loss weights, which the tool computes once per +surface (the national_state surface for the national product, the full registry +for the local one) before the split, so train and holdout keep fixed weights; +district household-population rows weigh 1 each; no L0 pruning, so the row +budget stays fixed. A sparse operator with a precomputed transpose replaces the +torch sparse-CSR backward pass, which had bottlenecked the solve; the objective +and projections stay the same. + +Starting weights: each CPS income year gets an equal share of the CPS mass; +a household with *k* location copies splits its weight over 1 + *k* rows; +CPS and ACS sides share mass in proportion to source households; then the +release's population mass repair rescales to its 334.2M-person benchmark. + +**Invariants** (`test_us_support_mix.py` tests each as a property): an arm's +CPS, ACS and clone households sum to its budget; ACS selections nest and do not +depend on input order; clone copies differ by at most one; starting weights +stay positive, sum to the requested mass, give each CPS year an equal share and +split CPS and ACS in proportion to households; distinct-household ESS never +exceeds row ESS or the distinct-unit count; the holdout role depends only on +the group key and never moves with a vintage token. **Differential**: the +sparse target matrix equals a naive dense construction, including cells that +carry several targets; `diffcheck` compares production per-target +materialization with concept × mask on real rows. + +### Scoring + +- **Registry holdout**: capped relative error by dimension (CPS-native: + income components, tax items, program receipt; ACS-native: PEP + demographics) and level, as a plain and a loss-weighted mean. A target no + row in the arm can move scores as a miss (error 1), so every arm's average + covers the same held-out set; a common-support table covers only targets + every arm supports. Two held-out targets lack support in every arm, and 22 + in the one-year CPS-only arm. +- **ACS-native**: households, tenure, aggregate rent (the model's + `pre_subsidy_rent`, against both contract rent B25060 and gross rent + B25065) and real-estate taxes, household population (B25008), and total + population, age and sex (B01003, B01001), by level including county. + Household measures exclude group-quarters rows. +- **ESS** over distinct households: Kish on each household unit's total + weight; also the median across districts. +- **Cost**: calibration wall time and peak RSS per arm; engine seconds per + household from the materialization receipts; physical rows as the serving + cost driver. +- **Report only**: SPM poverty rate, all persons and children. + +## CPS year response quality + +In `census_cps_YYYY.h5`, YYYY gives the income year; Census collects that +year's ASEC in YYYY+1. `asec_quality.py` computes the table from the processed +files and the Census public-use archives; the response rates come from Census. + +| Income year (ASEC) | Households | Combined response rate | Earners, whole record imputed | Earners, items allocated | Homeownership | UC recipients | +|---|---|---|---|---|---|---| +| 2018 (2019) | 68,345 | 67.6% | 24.2% | 21.3% | 64.5% | 1,723 | +| 2019 (2020) | 60,460 | 61.1% | 23.8% | 21.3% | 66.4% | 1,563 | +| 2020 (2021) | 62,850 | 65.0% | 22.4% | 22.6% | 65.8% | 10,915 | +| 2021 (2022) | 59,148 | 61.4% | 22.4% | 21.8% | 65.4% | 4,065 | +| 2022 (2023) | 56,839 | 59.6% | 21.9% | 21.7% | 65.9% | 1,225 | +| 2023 (2024) | 56,251 | 59.3% | 20.7% | 21.0% | 65.6% | 1,360 | +| 2024 (2025) | 55,762 | 60.1% | 19.3% | 21.5% | 65.1% | 1,400 | + +Combined response multiplies basic-CPS and ASEC household response, from each +year's CPS ASEC Source and Accuracy statement. Imputation shares weight wage +earners by `A_FNLWGT` (`I_ERNVAL` 9 marks a whole imputed record; 1–8 an +allocated item). Household weights have a coefficient of variation of 0.598 to +0.610 and a Kish share of 0.729 to 0.737 in every year. The public-use archives +give whole-supplement imputation (`FL_665`) of 20.5%, 19.9%, 19.2%, 17.8% and +16.7% for income years 2021 to 2025. + +Income years 2020 and 2021 **pass**: their response rates exceed the pinned +years'; their whole-record imputation shares sit between the pre-pandemic +years' and the pinned years'; their item-allocation shares, the highest of +the seven years (22.6% and 21.8%), stay within 1.6 points of every other +year; and homeownership and weight dispersion show no break. +Three caveats: + +- Census asks users to take care comparing data years 2019, 2020 and 2021 + with other years, and documents that nonrespondents in the 2020–2026 + surveys differ more from respondents than before (2026 CPS ASEC technical + documentation). That caution covers the pinned 2022–2024 years too. +- Their income years carry pandemic program receipt: 10,915 and 4,065 + unemployment-compensation recipients, against 1,225 to 1,723 in other + years. That matters for program-receipt targets. +- About a third of each file's households repeat in the neighbouring year + (32.5% to 37.8%). + +Income year 2019 (ASEC 2020, which Census collected as COVID hit) fails: +homeownership jumps 1.9 points (64.5% to 66.4%) and falls back the next year, +and the sample has 11.5% fewer households than the year before (60,460 +against 68,345). + +Rotation overlap: a housing unit appears in at most two adjacent files, so +2022–2024 has 130,294 distinct units in 168,852 households (77.2%), and +2020–2024 would have 211,834 in 290,850 (72.8%). + +## Caveats + +- **The CPS rows cover income years 2022–2024**, from the Route A export + available when this ran. The recommendation names "the newest three + years"; a rerun would use the 2023–2025 export. +- **Imputations stay the same across arms.** ACS rows' CPS-only inputs come + from one 57,240-household donor spine in every arm. A production one-year build + would also impute from a thinner donor pool. +- **Clones keep their origin row's engine values**, including anything that + varies by county within a state. +- **The holdout mirrors the unmerged US split without its pins.** Scores + compare across arms, but the eventual release split would give different + ones. +- **ACS-native scores use the published ACS 2024 1-year tables**, from the same + survey year as the ACS rows, so they measure consistency with the published + ACS. +- **Nothing uprates older CPS years**, as in Route A; calibration absorbs the + 2022–2024 nominal income gap. +- **The ACS support leaves out 5,246 group-quarters records with no SPM + adult**, pending the engine's SPM-universe input (policyengine-us#9462). +- **Every arm leaves out the JCT tax-expenditure targets**, which need reform + simulations. + +## Follow-ups + +- Rerun on the newest three CPS years (2023–2025) from a Route A export of main + at or after `5187fce25`. The run's work directory no longer exists, so a + rerun takes every step under Reproduce below, with `--newest-year 2025` on + `run-grid` and `report`. Within a rerun, `materialize` refuses a concept part + that lacks a receipt or whose receipt names another source h5, other concept + specs or another null-fill summary, unless run with `--replace-stale`, and an + arm's receipt counts as current only while every input the arm reads stays + the same: the targets, truth and epoch count, and, for each source it draws + on, the row index, the concept parts, the concept specs and the measure list. +- Add five-year arms (2020–2024 or 2021–2025) once those years have Route A + enrichment. +- When `microcosm.build.us_runtime.target_split` merges, swap it in and + **re-solve** every arm: a new split changes the training set. +- Find out why calibration worsens held-out state age cells 2.5-fold. + +## Evidence + +- Differential: production per-target materialization against concept × mask, + 4,000 households from each source, 349 state and district targets across nine + family-level groups: maximum scaled difference 0.0 for both + (`diffcheck.json`). The tool wrote the ACS half on 2026-09-29; the CPS half + reproduces the tool's own log line from 2026-09-28, which we copied into the + file after removing the CPS shard files to free disk. +- Stored parts against the final concept specs: `partcheck` re-materialized + 200 households from each of the 8 CPS parts and 8 of the 62 ACS parts + (both rank ranges) with the final specs and the branch's code, and compared + every column with the stored values: maximum scaled difference 5.8e-8, + float32 rounding (`partcheck_cps.json`, `partcheck_acs.json`). Three CPS + parts predate the last `compile`, which added loss weights only; this check + confirms their columns. For the check we rebuilt the CPS shards from the + same h5, and their row index equals the one the arms used. +- On 2026-09-30, rerunning `report` on the 60 arm receipts reproduced every + committed table byte for byte. Those receipts (10–15 MB each, with every + held-out target's estimate) and the saved weights stayed in the run's work + directory, which no longer exists, so the committed tables now carry the + record. +- Tests: `test_us_support_mix.py`, 22 tests (properties, the dense + differential and the port-branch hash fixtures), and + `test_bakeoff_us_support_mix_tool.py`, 24 tests of the driver's SPM flag, + staleness guards, `partcheck` rules, grid and report. +- After the run, the tool gained four guards a final review asked for: + receipt digests also cover the concept specs and the measure list, + `partcheck` fails a column with any nonfinite value and refuses an unknown + or empty part selection, and `--allow-stale` alone now writes a report. + The recorded checks had finite differences and matched every part they + named, so no committed number moves. +- Receipts in `experiments/us-support-mix-bakeoff-20260930/`: the report + tables, `compile.json`, `diffcheck.json`, `partcheck_*.json`, + `spm_flags.json`, `asec_quality.json` (with its script), `acs_truth.json`, + and the per-part materialization receipts under `materialize/`. + +Reproduce: `compile`, `shard` (both sources), `truth`, `materialize` (both +sources; ACS by rank range), `diffcheck`, `partcheck` (both sources), +`run-grid --products national` and `--products local`, `report --truth`, then +`memo_tables.py`. Each step writes a receipt with wall time and peak RSS. diff --git a/experiments/us-support-mix-bakeoff-20260930/README.md b/experiments/us-support-mix-bakeoff-20260930/README.md new file mode 100644 index 0000000000..291991c8d2 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/README.md @@ -0,0 +1,32 @@ +# Support-mix bake-off receipts (2026-09-30) + +Outputs of `tools/bakeoff_us_support_mix.py report` over the 60 arm receipts +(30 arms × national and local products), plus the compile and differential +receipts. [`docs/us-support-mix-bakeoff.md`](../../docs/us-support-mix-bakeoff.md) +gives the design, verdict and caveats. + +| File | What | +|---|---| +| `dimensions_by_arm.csv` | One row per arm and product: rows, distinct-household ESS, held-out error by dimension and level, ACS-native error by level | +| `headline.md` | The same, as markdown tables by product | +| `arms.csv` | Per-arm counts, ESS variants, training loss, solve time, peak RSS, report-only SPM rates | +| `holdout_by_dimension_level.csv` | Held-out error by product, arm, dimension group, dimension and level (unsupported targets score as misses) | +| `holdout_by_dimension_level_common_support.csv` | The same over targets every arm supports | +| `holdout_unsupported.csv` | Held-out targets no row in an arm can move | +| `replicate_spread.csv` | SD across three disjoint ACS draws (300k arms) | +| `replicate_mean.csv` | Mean across the same three draws | +| `acs_native_by_level_measure.csv` | ACS-native error by product, arm, level and measure | +| `compile.json` | Registry compile: 32,842 specs, 419 concepts, split roles by level | +| `diffcheck.json` | Production per-target columns vs concept × mask on 4,000 households per source: max scaled difference 0.0 | +| `acs_truth.json` | ACS 2024 1-year summary-file cells and their SHA-256 | +| `partcheck_cps.json`, `partcheck_acs.json` | Stored concept parts against a fresh materialization, under the final concept specs, of 200 sampled households per part: max scaled difference 5.8e-8 | +| `spm_flags.json` | ACS group-quarters share and the SPM zero-adult records the support leaves out (`spm-flags`) | +| `materialize/` | Per-part engine-pass receipts (households, wall time, peak RSS) and the measure list | +| `asec_quality.py`, `asec_quality.json` | CPS year response-quality check (script and its output) | +| `memo_tables.py` | Builds the memo's results tables from these files | + +The folder holds no per-arm receipts (10–15 MB each, with every held-out +target's estimate) and no saved weights. Both stayed in the run's work +directory, which no longer exists. The `materialize/` receipts predate the +source-h5, concept-spec and null-fill-summary digests the memo describes; on +2026-09-30 their numerical fields matched the work copies'. diff --git a/experiments/us-support-mix-bakeoff-20260930/acs_native_by_level_measure.csv b/experiments/us-support-mix-bakeoff-20260930/acs_native_by_level_measure.csv new file mode 100644 index 0000000000..0d80fcb4a8 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/acs_native_by_level_measure.csv @@ -0,0 +1,2851 @@ +product,arm,level,measure,geos,mean_rel,median_rel,mean_rel_initial +local,b1200k.cps0.acs100.s0,cd,households,436,0.04427301978229049,0.03438499070140905,0.016911495924950226 +local,b1200k.cps0.acs100.s0,cd,owner,436,0.07221493495841956,0.05565673921806366,0.027389507466497036 +local,b1200k.cps0.acs100.s0,cd,persons_0_17,436,0.09530518962962953,0.08639572136848075,0.06654691908238346 +local,b1200k.cps0.acs100.s0,cd,persons_18_64,436,0.05343013429622955,0.043124630347296036,0.030189007725320485 +local,b1200k.cps0.acs100.s0,cd,persons_65p,436,0.07083138454791808,0.059586512309557804,0.03557104609681045 +local,b1200k.cps0.acs100.s0,cd,persons_male,436,0.03339279937223124,0.023859344556897335,0.03622902588748794 +local,b1200k.cps0.acs100.s0,cd,persons_total,436,0.017674242298261592,0.007315229136467999,0.028675723791477488 +local,b1200k.cps0.acs100.s0,cd,real_estate_taxes_aggregate,436,0.1478134742237319,0.11512662042900623,0.10122144808323005 +local,b1200k.cps0.acs100.s0,cd,rent_contract_annual_aggregate,436,0.32692481095378284,0.2707260630452516,0.31736926347378935 +local,b1200k.cps0.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2882776051782837,0.2501562390667819,0.27748145721184314 +local,b1200k.cps0.acs100.s0,cd,renter,436,0.13920190037099026,0.13353980168716928,0.06711358591432277 +local,b1200k.cps0.acs100.s0,county,households,850,0.08479741210000857,0.061642705606277486,0.04022659235624308 +local,b1200k.cps0.acs100.s0,county,owner,850,0.10733061917970887,0.07397453938049325,0.05181320521507365 +local,b1200k.cps0.acs100.s0,county,persons_0_17,850,0.168484420061009,0.11676165353981811,0.11612417671617863 +local,b1200k.cps0.acs100.s0,county,persons_18_64,850,0.1062927270724857,0.07996488211831002,0.062008162383127195 +local,b1200k.cps0.acs100.s0,county,persons_65p,850,0.1313665379592045,0.09229974735524163,0.07428653610579898 +local,b1200k.cps0.acs100.s0,county,persons_in_households,850,0.08705165365553381,0.05807207390696298,0.05780813581478426 +local,b1200k.cps0.acs100.s0,county,persons_male,850,0.09522152532603957,0.06818776275177599,0.06327159961501264 +local,b1200k.cps0.acs100.s0,county,persons_total,850,0.08577145789280034,0.05662192392393692,0.05559416595186459 +local,b1200k.cps0.acs100.s0,county,real_estate_taxes_aggregate,850,0.19619959787392507,0.1297638903585985,0.14261841373325493 +local,b1200k.cps0.acs100.s0,county,rent_contract_annual_aggregate,850,0.39997174424202137,0.3213450018106754,0.3952170587464888 +local,b1200k.cps0.acs100.s0,county,rent_gross_annual_aggregate,850,0.344812152365374,0.285404808119163,0.32378289924857434 +local,b1200k.cps0.acs100.s0,county,renter,850,0.20382909800016993,0.167336252691561,0.1188825367351446 +local,b1200k.cps0.acs100.s0,national,households,1,0.007434925251567506,0.007434925251567506,0.00012716099964809008 +local,b1200k.cps0.acs100.s0,national,owner,1,0.049609524745631815,0.049609524745631815,0.0007317503461692467 +local,b1200k.cps0.acs100.s0,national,persons_0_17,1,0.08538541333707152,0.08538541333707152,0.037687584363355786 +local,b1200k.cps0.acs100.s0,national,persons_18_64,1,0.05050980146309542,0.05050980146309542,0.018638293933160584 +local,b1200k.cps0.acs100.s0,national,persons_65p,1,0.002989548911857183,0.002989548911857183,0.011035015710395802 +local,b1200k.cps0.acs100.s0,national,persons_in_households,1,0.008616414665094864,0.008616414665094864,0.017428446304894415 +local,b1200k.cps0.acs100.s0,national,persons_male,1,0.027853571076861393,0.027853571076861393,0.028831067096646904 +local,b1200k.cps0.acs100.s0,national,persons_total,1,0.011736201781802002,0.011736201781802002,0.017379591291828728 +local,b1200k.cps0.acs100.s0,national,real_estate_taxes_aggregate,1,0.11171387907502785,0.11171387907502785,0.016208821369269332 +local,b1200k.cps0.acs100.s0,national,rent_contract_annual_aggregate,1,0.1411351588986137,0.1411351588986137,0.1313430482891693 +local,b1200k.cps0.acs100.s0,national,rent_gross_annual_aggregate,1,0.24550894175841056,0.24550894175841056,0.23690682004777663 +local,b1200k.cps0.acs100.s0,national,renter,1,0.12050023329682552,0.12050023329682552,0.0493118006082098 +local,b1200k.cps0.acs100.s0,state,households,51,0.0261149426357419,0.020224442939404987,0.006340511853583996 +local,b1200k.cps0.acs100.s0,state,owner,51,0.04226254446330702,0.03863608876169431,0.007269437556433841 +local,b1200k.cps0.acs100.s0,state,persons_0_17,51,0.07781405134002749,0.08167234271462306,0.03864460240960343 +local,b1200k.cps0.acs100.s0,state,persons_18_64,51,0.05112823319220194,0.04383455545703196,0.021234174699764987 +local,b1200k.cps0.acs100.s0,state,persons_65p,51,0.013391319876276588,0.006075469260708913,0.016713799694230005 +local,b1200k.cps0.acs100.s0,state,persons_in_households,51,0.013492788124963104,0.01057947275338239,0.017791336343165817 +local,b1200k.cps0.acs100.s0,state,persons_male,51,0.029590284938556807,0.027031979405427557,0.025371236158061715 +local,b1200k.cps0.acs100.s0,state,persons_total,51,0.01714308222067046,0.011395755052325322,0.01756616344174996 +local,b1200k.cps0.acs100.s0,state,real_estate_taxes_aggregate,51,0.08143662187283232,0.07684256342802845,0.021820775325743013 +local,b1200k.cps0.acs100.s0,state,rent_contract_annual_aggregate,51,0.1974558579308067,0.16850082111710196,0.1980296977894466 +local,b1200k.cps0.acs100.s0,state,rent_gross_annual_aggregate,51,0.23856212492889373,0.19012901510541358,0.21777165814576163 +local,b1200k.cps0.acs100.s0,state,renter,51,0.14190661554317982,0.14313912310291732,0.06036941203737398 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,households,436,0.069047881470985,0.05050555087673955,0.04518524883062504 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,owner,436,0.12520165569337727,0.07059814825807703,0.1404255430161006 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_0_17,436,0.08505360085935257,0.06300136431262499,0.11965151863731681 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_18_64,436,0.04539559222704012,0.03788262549387429,0.05732985391201939 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_65p,436,0.09288995095172602,0.07234892081608701,0.12667758978290083 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_male,436,0.040893566595769926,0.03543914610579385,0.0589791545885527 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_total,436,0.0262403138798725,0.020370644477683893,0.04942042985000886 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.5160473335852018,0.5466787625691101,0.5765496463852601 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3113737725839132,0.255085776749404,0.31374362377056914 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.2890066092350935,0.2653573840915736,0.2865611639180526 +local,b1200k.cps2022-2023-2024.acs000.s0,cd,renter,436,0.24502593115577462,0.18768166786271062,0.22171063149334405 +local,b1200k.cps2022-2023-2024.acs000.s0,county,households,850,0.08254936528501279,0.05845286016695979,0.06351266137919379 +local,b1200k.cps2022-2023-2024.acs000.s0,county,owner,850,0.13574830527729653,0.09899943583256016,0.1350622630923501 +local,b1200k.cps2022-2023-2024.acs000.s0,county,persons_0_17,850,0.15656239170034128,0.11190688982764949,0.15380407717060152 +local,b1200k.cps2022-2023-2024.acs000.s0,county,persons_18_64,850,0.0919161055138269,0.06594138371341711,0.09274177961645999 +local,b1200k.cps2022-2023-2024.acs000.s0,county,persons_65p,850,0.15403333328716418,0.11551704718184279,0.15379855358052308 +local,b1200k.cps2022-2023-2024.acs000.s0,county,persons_in_households,850,0.07269200972224081,0.048369690125710206,0.07819523906848598 +local,b1200k.cps2022-2023-2024.acs000.s0,county,persons_male,850,0.08018326316852016,0.05763070971102535,0.08118995883186989 +local,b1200k.cps2022-2023-2024.acs000.s0,county,persons_total,850,0.06961858566581294,0.04781197000302429,0.0716431515359234 +local,b1200k.cps2022-2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5162438993712757,0.5461745193585448,0.5481905154373263 +local,b1200k.cps2022-2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.39195115674852765,0.3034040453549717,0.39448468761155026 +local,b1200k.cps2022-2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.3360511703613626,0.28433783311676236,0.3343185758806215 +local,b1200k.cps2022-2023-2024.acs000.s0,county,renter,850,0.31916394555059,0.23726415841783602,0.29234951692374417 +local,b1200k.cps2022-2023-2024.acs000.s0,national,households,1,0.040387780111331,0.040387780111331,0.040387780113526596 +local,b1200k.cps2022-2023-2024.acs000.s0,national,owner,1,0.03357858408267326,0.03357858408267326,0.04504294266257366 +local,b1200k.cps2022-2023-2024.acs000.s0,national,persons_0_17,1,0.049308676209858064,0.049308676209858064,0.02109426309361929 +local,b1200k.cps2022-2023-2024.acs000.s0,national,persons_18_64,1,0.0246225072209167,0.0246225072209167,0.026748636553088446 +local,b1200k.cps2022-2023-2024.acs000.s0,national,persons_65p,1,0.031433972996498145,0.031433972996498145,0.018547026346188787 +local,b1200k.cps2022-2023-2024.acs000.s0,national,persons_in_households,1,0.015038946572494154,0.015038946572494154,0.007468807604379701 +local,b1200k.cps2022-2023-2024.acs000.s0,national,persons_male,1,0.023872286683585965,0.023872286683585965,0.030890456469098288 +local,b1200k.cps2022-2023-2024.acs000.s0,national,persons_total,1,0.009996163644612055,0.009996163644612055,0.017379591290894465 +local,b1200k.cps2022-2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5775229769203329,0.5775229769203329,0.6659411721508772 +local,b1200k.cps2022-2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.133663487617987,0.133663487617987,0.13110826309010554 +local,b1200k.cps2022-2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.23894526735753024,0.23894526735753024,0.2367005671837359 +local,b1200k.cps2022-2023-2024.acs000.s0,national,renter,1,0.019651153335989803,0.019651153335989803,0.002244212836202863 +local,b1200k.cps2022-2023-2024.acs000.s0,state,households,51,0.04168106974774076,0.022896189053178962,0.038818772971576876 +local,b1200k.cps2022-2023-2024.acs000.s0,state,owner,51,0.03948769039104629,0.0342401745854921,0.0493736484367394 +local,b1200k.cps2022-2023-2024.acs000.s0,state,persons_0_17,51,0.057034421046596416,0.048602844972185914,0.0512512979358941 +local,b1200k.cps2022-2023-2024.acs000.s0,state,persons_18_64,51,0.029182394667022712,0.025198248138175477,0.02908260558134452 +local,b1200k.cps2022-2023-2024.acs000.s0,state,persons_65p,51,0.026976965624160403,0.009241879478656055,0.033742093722682054 +local,b1200k.cps2022-2023-2024.acs000.s0,state,persons_in_households,51,0.018360548126327814,0.017012541478905387,0.020461498374014224 +local,b1200k.cps2022-2023-2024.acs000.s0,state,persons_male,51,0.026710155421557608,0.02186889418466467,0.030540574782717666 +local,b1200k.cps2022-2023-2024.acs000.s0,state,persons_total,51,0.015037490672895672,0.013782890537052348,0.017719590215260896 +local,b1200k.cps2022-2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.47045561292598304,0.45335044693996196,0.5512094530501032 +local,b1200k.cps2022-2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.15055004442883715,0.14511023272786083,0.14685647166608887 +local,b1200k.cps2022-2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.23792044114864602,0.23306018687729513,0.23190637634799482 +local,b1200k.cps2022-2023-2024.acs000.s0,state,renter,51,0.08950569746242691,0.08130359799445902,0.0587400793962271 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,households,436,0.05033663345949752,0.03872338918832381,0.022072086987933517 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,owner,436,0.0800394089743498,0.05354706630452265,0.04119741442822208 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_0_17,436,0.08699245500928138,0.0720094793897201,0.06407429334169583 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_18_64,436,0.046625853235814065,0.04028539741595516,0.029576337882797 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_65p,436,0.07049582256943826,0.057286370487826754,0.0434547563822687 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_male,436,0.029285320495004027,0.022977191834417245,0.034858214194812345 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_total,436,0.01492332807761046,0.009141253666360092,0.027570366598346125 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.11973728281403613,0.10955118393036242,0.1073369274538778 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3193227641622278,0.2620268719550337,0.3112882414289057 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2801301035735802,0.24557330869373642,0.2727051118203135 +local,b1200k.cps2022-2023-2024.acs100.s0,cd,renter,436,0.13429554693835505,0.11707844229710793,0.07244212156029424 +local,b1200k.cps2022-2023-2024.acs100.s0,county,households,850,0.08358765476474253,0.060875251128713226,0.04623431398270421 +local,b1200k.cps2022-2023-2024.acs100.s0,county,owner,850,0.10727432243562716,0.07643019238756477,0.06286937117629632 +local,b1200k.cps2022-2023-2024.acs100.s0,county,persons_0_17,850,0.15597346095635714,0.10883541412015561,0.11212966185436829 +local,b1200k.cps2022-2023-2024.acs100.s0,county,persons_18_64,850,0.09931665005091224,0.07637679718183411,0.0629789352653305 +local,b1200k.cps2022-2023-2024.acs100.s0,county,persons_65p,850,0.1256395362323489,0.09173213843839803,0.08174509207721281 +local,b1200k.cps2022-2023-2024.acs100.s0,county,persons_in_households,850,0.08184941219532303,0.05762064435866421,0.057486963759458595 +local,b1200k.cps2022-2023-2024.acs100.s0,county,persons_male,850,0.0881232800702021,0.06309521163356041,0.06365689945447187 +local,b1200k.cps2022-2023-2024.acs100.s0,county,persons_total,850,0.08062007640722303,0.05633570468590887,0.056121061356943086 +local,b1200k.cps2022-2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.18844777008577143,0.15531365407430953,0.1441357392419482 +local,b1200k.cps2022-2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4018415720761538,0.30920657337738766,0.3908362320336901 +local,b1200k.cps2022-2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3399882882758326,0.28431800997918355,0.32001474708529537 +local,b1200k.cps2022-2023-2024.acs100.s0,county,renter,850,0.18262529596015187,0.1485895454542121,0.11658787580125685 +local,b1200k.cps2022-2023-2024.acs100.s0,national,households,1,0.01921157357424606,0.01921157357424606,0.005732790784073824 +local,b1200k.cps2022-2023-2024.acs100.s0,national,owner,1,0.050563556129256365,0.050563556129256365,0.006959414264278527 +local,b1200k.cps2022-2023-2024.acs100.s0,national,persons_0_17,1,0.07494785130421898,0.07494785130421898,0.03563993224750431 +local,b1200k.cps2022-2023-2024.acs100.s0,national,persons_18_64,1,0.0424995025119307,0.0424995025119307,0.019905132411002127 +local,b1200k.cps2022-2023-2024.acs100.s0,national,persons_65p,1,0.003686172021639524,0.003686172021639524,0.012856450490533357 +local,b1200k.cps2022-2023-2024.acs100.s0,national,persons_in_households,1,0.0012142039072195177,0.0012142039072195177,0.013839414143941027 +local,b1200k.cps2022-2023-2024.acs100.s0,national,persons_male,1,0.02546911713744286,0.02546911713744286,0.02887160484491514 +local,b1200k.cps2022-2023-2024.acs100.s0,national,persons_total,1,0.010326216608868816,0.010326216608868816,0.017379591296109748 +local,b1200k.cps2022-2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.08789782739600065,0.08789782739600065,0.0817794119248525 +local,b1200k.cps2022-2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.13022246502631346,0.13022246502631346,0.13162350159042394 +local,b1200k.cps2022-2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.23592241596999916,0.23592241596999916,0.2371531911854979 +local,b1200k.cps2022-2023-2024.acs100.s0,national,renter,1,0.08654648233389382,0.08654648233389382,0.04215922834937168 +local,b1200k.cps2022-2023-2024.acs100.s0,state,households,51,0.02669892704441823,0.021286281792827676,0.008128965882120278 +local,b1200k.cps2022-2023-2024.acs100.s0,state,owner,51,0.044193092411662326,0.036755476214100934,0.010166682506037894 +local,b1200k.cps2022-2023-2024.acs100.s0,state,persons_0_17,51,0.07195889625305034,0.06846175517125037,0.03951583348206128 +local,b1200k.cps2022-2023-2024.acs100.s0,state,persons_18_64,51,0.044122403435575754,0.037339273199125445,0.021553838014691296 +local,b1200k.cps2022-2023-2024.acs100.s0,state,persons_65p,51,0.011377534930114655,0.006771900709924348,0.01929052988991131 +local,b1200k.cps2022-2023-2024.acs100.s0,state,persons_in_households,51,0.009369319115184746,0.005921373320017101,0.015489999611270629 +local,b1200k.cps2022-2023-2024.acs100.s0,state,persons_male,51,0.02682046524629821,0.023509475300571816,0.02459271957332012 +local,b1200k.cps2022-2023-2024.acs100.s0,state,persons_total,51,0.015515630264381986,0.01086381073308733,0.017107951769455565 +local,b1200k.cps2022-2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.1031037557804877,0.1081146484287335,0.06472528643643173 +local,b1200k.cps2022-2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.17291321667144863,0.13431714327517985,0.1831818536384398 +local,b1200k.cps2022-2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.22089349062798153,0.19151707096284634,0.2117863175680653 +local,b1200k.cps2022-2023-2024.acs100.s0,state,renter,51,0.11370167226840043,0.11045873150101593,0.056837507657463315 +local,b1200k.cps2023-2024.acs000.s0,cd,households,436,0.06823630625827151,0.0513314243928471,0.044564574207843 +local,b1200k.cps2023-2024.acs000.s0,cd,owner,436,0.12372657081128881,0.07262364948156792,0.14153227525093334 +local,b1200k.cps2023-2024.acs000.s0,cd,persons_0_17,436,0.08685969552550799,0.06438630503168968,0.12293927498450163 +local,b1200k.cps2023-2024.acs000.s0,cd,persons_18_64,436,0.04587626690319968,0.037621228671312,0.06042594908692552 +local,b1200k.cps2023-2024.acs000.s0,cd,persons_65p,436,0.08892503463673175,0.07058639178583384,0.1287992584404723 +local,b1200k.cps2023-2024.acs000.s0,cd,persons_male,436,0.042648098848131775,0.0353516181589049,0.06182140406886844 +local,b1200k.cps2023-2024.acs000.s0,cd,persons_total,436,0.025819633584924617,0.020160422786727993,0.051768503933713614 +local,b1200k.cps2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.5109924048994318,0.5554029356082184,0.567240671218558 +local,b1200k.cps2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.31471680804439256,0.26921925607656655,0.3167342940476949 +local,b1200k.cps2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.28730361455997916,0.2544565835722675,0.28658779645383037 +local,b1200k.cps2023-2024.acs000.s0,cd,renter,436,0.2502072468472576,0.19928669619302652,0.2215426684768285 +local,b1200k.cps2023-2024.acs000.s0,county,households,850,0.08227707651771957,0.05708435627653949,0.06282201659937088 +local,b1200k.cps2023-2024.acs000.s0,county,owner,850,0.1365513448559776,0.10027913776026155,0.1364383464137909 +local,b1200k.cps2023-2024.acs000.s0,county,persons_0_17,850,0.1550747486871637,0.11080915714771708,0.1551641847716341 +local,b1200k.cps2023-2024.acs000.s0,county,persons_18_64,850,0.09284813370461804,0.06690700356047218,0.09394595132377956 +local,b1200k.cps2023-2024.acs000.s0,county,persons_65p,850,0.1547150990782576,0.11231837432941377,0.1551185502768662 +local,b1200k.cps2023-2024.acs000.s0,county,persons_in_households,850,0.07285485683579301,0.04710556785699737,0.07986795721353147 +local,b1200k.cps2023-2024.acs000.s0,county,persons_male,850,0.08231025595134485,0.061443635968005936,0.08350473885300172 +local,b1200k.cps2023-2024.acs000.s0,county,persons_total,850,0.07036676827465319,0.049970688623287046,0.0730137023744197 +local,b1200k.cps2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5100151051727887,0.5389719213468258,0.5407990038976922 +local,b1200k.cps2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.4003477775566855,0.32089936466070845,0.40129323930771454 +local,b1200k.cps2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.3342906185107772,0.2885282817415071,0.3348004185410823 +local,b1200k.cps2023-2024.acs000.s0,county,renter,850,0.3236367136838645,0.2511300876641732,0.2964990840290454 +local,b1200k.cps2023-2024.acs000.s0,national,households,1,0.04063176077417863,0.04063176077417863,0.04063176077459197 +local,b1200k.cps2023-2024.acs000.s0,national,owner,1,0.02668735471636629,0.02668735471636629,0.042345165726567116 +local,b1200k.cps2023-2024.acs000.s0,national,persons_0_17,1,0.050165281051242086,0.050165281051242086,0.027390231881011307 +local,b1200k.cps2023-2024.acs000.s0,national,persons_18_64,1,0.02535449644263056,0.02535449644263056,0.026805015070826117 +local,b1200k.cps2023-2024.acs000.s0,national,persons_65p,1,0.027253251343840143,0.027253251343840143,0.026233676447592717 +local,b1200k.cps2023-2024.acs000.s0,national,persons_in_households,1,0.015544724434704456,0.015544724434704456,0.00746880760318086 +local,b1200k.cps2023-2024.acs000.s0,national,persons_male,1,0.02512630084872017,0.02512630084872017,0.030408793666069425 +local,b1200k.cps2023-2024.acs000.s0,national,persons_total,1,0.009502860382089346,0.009502860382089346,0.017379591292063738 +local,b1200k.cps2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5730728368453866,0.5730728368453866,0.6562268648260605 +local,b1200k.cps2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.12169961923298694,0.12169961923298694,0.12227496863453662 +local,b1200k.cps2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.22843531132430123,0.22843531132430123,0.2289407412337119 +local,b1200k.cps2023-2024.acs000.s0,national,renter,1,0.03094853731435451,0.03094853731435451,0.0025205865938268818 +local,b1200k.cps2023-2024.acs000.s0,state,households,51,0.04300917388043082,0.028267608939989496,0.040169481760378004 +local,b1200k.cps2023-2024.acs000.s0,state,owner,51,0.03536385498716099,0.022638393308355476,0.047575326212757944 +local,b1200k.cps2023-2024.acs000.s0,state,persons_0_17,51,0.05815685747513437,0.046424369824549366,0.05483953711216453 +local,b1200k.cps2023-2024.acs000.s0,state,persons_18_64,51,0.030029523382629673,0.02560453248883065,0.03073725927409112 +local,b1200k.cps2023-2024.acs000.s0,state,persons_65p,51,0.02463443118446185,0.010466984175165055,0.03958899754100444 +local,b1200k.cps2023-2024.acs000.s0,state,persons_in_households,51,0.018935722287930026,0.016961583043392573,0.019558544514569513 +local,b1200k.cps2023-2024.acs000.s0,state,persons_male,51,0.02939568631759411,0.025882439974876797,0.031232583282332423 +local,b1200k.cps2023-2024.acs000.s0,state,persons_total,51,0.01503874676303471,0.014329320578572877,0.018964847449251816 +local,b1200k.cps2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.46567602625174936,0.45958977901821174,0.5416227019420768 +local,b1200k.cps2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.14519540520012447,0.1345490865702917,0.1416029247645683 +local,b1200k.cps2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.22700239776654763,0.22151881209702406,0.2199685049241693 +local,b1200k.cps2023-2024.acs000.s0,state,renter,51,0.08866100355154378,0.0798515893412378,0.06435477021533238 +local,b1200k.cps2023-2024.acs100.s0,cd,households,436,0.04840291468980343,0.037682359850653414,0.020154341983230194 +local,b1200k.cps2023-2024.acs100.s0,cd,owner,436,0.07575224567715635,0.05223534722239018,0.03577675830490396 +local,b1200k.cps2023-2024.acs100.s0,cd,persons_0_17,436,0.08901853399561867,0.07495092069542766,0.0654114033746476 +local,b1200k.cps2023-2024.acs100.s0,cd,persons_18_64,436,0.0489178963243679,0.04275858806816561,0.029571705565789384 +local,b1200k.cps2023-2024.acs100.s0,cd,persons_65p,436,0.06837095589954867,0.05368913601230747,0.039860944908416435 +local,b1200k.cps2023-2024.acs100.s0,cd,persons_male,436,0.030269121529739332,0.023447714798054985,0.035369958291775805 +local,b1200k.cps2023-2024.acs100.s0,cd,persons_total,436,0.015509260934857064,0.008455891598493349,0.028067183549150776 +local,b1200k.cps2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.10195119873094961,0.08437662765663728,0.09845020440267864 +local,b1200k.cps2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.32088254062477856,0.2717499181378628,0.31361045161538365 +local,b1200k.cps2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.27898251579399685,0.24823638444438675,0.2737845094027156 +local,b1200k.cps2023-2024.acs100.s0,cd,renter,436,0.1317651837980077,0.1206504278183243,0.06823628106225212 +local,b1200k.cps2023-2024.acs100.s0,county,households,850,0.08407567252452944,0.058786355331609544,0.04371191414055543 +local,b1200k.cps2023-2024.acs100.s0,county,owner,850,0.10569652618913603,0.0727035265494301,0.05878768843480771 +local,b1200k.cps2023-2024.acs100.s0,county,persons_0_17,850,0.1609674381293341,0.11013953295976499,0.11046384351569767 +local,b1200k.cps2023-2024.acs100.s0,county,persons_18_64,850,0.10300110464382223,0.08181851960551409,0.06312088019806363 +local,b1200k.cps2023-2024.acs100.s0,county,persons_65p,850,0.12309298735508256,0.09103330423310793,0.07924608197981975 +local,b1200k.cps2023-2024.acs100.s0,county,persons_in_households,850,0.08381264564726133,0.05394361035238168,0.0573049693189195 +local,b1200k.cps2023-2024.acs100.s0,county,persons_male,850,0.09137703409369415,0.06420590400466467,0.06325689573472675 +local,b1200k.cps2023-2024.acs100.s0,county,persons_total,850,0.08265158863744038,0.055410636527994925,0.055813629157630655 +local,b1200k.cps2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.17550785461243032,0.1307373485414577,0.1380272770547855 +local,b1200k.cps2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4039224879425764,0.3183990937052586,0.3929387851111985 +local,b1200k.cps2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.34117374752371477,0.28407123105914334,0.3211877374058415 +local,b1200k.cps2023-2024.acs100.s0,county,renter,850,0.1846084800599118,0.14809598285625203,0.11243008690078864 +local,b1200k.cps2023-2024.acs100.s0,national,households,1,0.01595867596830234,0.01595867596830234,0.0037640638990095875 +local,b1200k.cps2023-2024.acs100.s0,national,owner,1,0.048736712187690746,0.048736712187690746,0.004551321624416254 +local,b1200k.cps2023-2024.acs100.s0,national,persons_0_17,1,0.07868373605408166,0.07868373605408166,0.0372720265406491 +local,b1200k.cps2023-2024.acs100.s0,national,persons_18_64,1,0.04501411774873171,0.04501411774873171,0.01944243097417546 +local,b1200k.cps2023-2024.acs100.s0,national,persons_65p,1,0.0013115493360290138,0.0013115493360290138,0.013244079503840643 +local,b1200k.cps2023-2024.acs100.s0,national,persons_in_households,1,0.0032755926029794133,0.0032755926029794133,0.015085609209046204 +local,b1200k.cps2023-2024.acs100.s0,national,persons_male,1,0.025823371900619136,0.025823371900619136,0.028723425850529456 +local,b1200k.cps2023-2024.acs100.s0,national,persons_total,1,0.010620123176580091,0.010620123176580091,0.017379591291671177 +local,b1200k.cps2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.032632087661508984,0.032632087661508984,0.048095512197352995 +local,b1200k.cps2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.13053750727559332,0.13053750727559332,0.1302302441270425 +local,b1200k.cps2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.2361991726244515,0.2361991726244515,0.23592924971340132 +local,b1200k.cps2023-2024.acs100.s0,national,renter,1,0.09348036321971608,0.09348036321971608,0.04412479300143794 +local,b1200k.cps2023-2024.acs100.s0,state,households,51,0.025897817079565403,0.02453825475231082,0.007366472441886084 +local,b1200k.cps2023-2024.acs100.s0,state,owner,51,0.04185070202577952,0.03732080479692035,0.008502929987951028 +local,b1200k.cps2023-2024.acs100.s0,state,persons_0_17,51,0.0741553309023377,0.07142870092339089,0.040353336543008406 +local,b1200k.cps2023-2024.acs100.s0,state,persons_18_64,51,0.0466570961098337,0.04033399327374196,0.021963235988107524 +local,b1200k.cps2023-2024.acs100.s0,state,persons_65p,51,0.011631330933119343,0.007189042982982841,0.017674882541369112 +local,b1200k.cps2023-2024.acs100.s0,state,persons_in_households,51,0.010680112959660338,0.0073078626904282485,0.016703247134444904 +local,b1200k.cps2023-2024.acs100.s0,state,persons_male,51,0.028252386999057067,0.024607169623923824,0.02456790941781729 +local,b1200k.cps2023-2024.acs100.s0,state,persons_total,51,0.016492835915775248,0.012087375300734938,0.017474487339868436 +local,b1200k.cps2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.061344046137656115,0.05157626485079917,0.03822292357876195 +local,b1200k.cps2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.17757474874509294,0.15688487403070306,0.18859795684214398 +local,b1200k.cps2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.2230417230264341,0.1915804151735081,0.21413141669053612 +local,b1200k.cps2023-2024.acs100.s0,state,renter,51,0.11841935590620671,0.11620559782159323,0.05758225115104507 +local,b1200k.cps2024.acs000.s0,cd,households,436,0.07061945499342524,0.054447615296628074,0.04621848016869883 +local,b1200k.cps2024.acs000.s0,cd,owner,436,0.12208907880508253,0.07136555045320586,0.14132672189037712 +local,b1200k.cps2024.acs000.s0,cd,persons_0_17,436,0.08928444070922048,0.06604086280709831,0.12785088140978082 +local,b1200k.cps2024.acs000.s0,cd,persons_18_64,436,0.04680255428764767,0.03914806296293263,0.06359121804798824 +local,b1200k.cps2024.acs000.s0,cd,persons_65p,436,0.08745341350057936,0.06843779518737446,0.13469387628308355 +local,b1200k.cps2024.acs000.s0,cd,persons_male,436,0.0467475539067713,0.03945874019726592,0.06364368304459218 +local,b1200k.cps2024.acs000.s0,cd,persons_total,436,0.026136647367809716,0.020378041309458146,0.053907086393193346 +local,b1200k.cps2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.5136946291264611,0.5507457229011867,0.5521107010770457 +local,b1200k.cps2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.32226693727663036,0.2650347953889744,0.3200859517806284 +local,b1200k.cps2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.2879375936367882,0.25571669300392197,0.2843673506925899 +local,b1200k.cps2024.acs000.s0,cd,renter,436,0.2597683673389378,0.1994911140374569,0.22713797865020413 +local,b1200k.cps2024.acs000.s0,county,households,850,0.08500416390249613,0.05986353034027067,0.06359084601637403 +local,b1200k.cps2024.acs000.s0,county,owner,850,0.13832147218972188,0.1033648904596967,0.13749341851081417 +local,b1200k.cps2024.acs000.s0,county,persons_0_17,850,0.15874757812623363,0.11110751870459776,0.1592650909236374 +local,b1200k.cps2024.acs000.s0,county,persons_18_64,850,0.09647536331995574,0.06985646320402139,0.09714335564405126 +local,b1200k.cps2024.acs000.s0,county,persons_65p,850,0.15662198718630954,0.12076302578328352,0.15816236579282392 +local,b1200k.cps2024.acs000.s0,county,persons_in_households,850,0.0773272839057035,0.051243129852990746,0.08228200333288341 +local,b1200k.cps2024.acs000.s0,county,persons_male,850,0.08670908893747,0.060433700363205736,0.08637137279811688 +local,b1200k.cps2024.acs000.s0,county,persons_total,850,0.07382269604012116,0.04949474803491896,0.0760483537975984 +local,b1200k.cps2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5085380449322112,0.5456383327989675,0.5248335872991333 +local,b1200k.cps2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.40387738945572943,0.3203761441059867,0.40502530981820684 +local,b1200k.cps2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.34138160996641065,0.2912980981530274,0.33851544114425125 +local,b1200k.cps2024.acs000.s0,county,renter,850,0.3280486564340045,0.24111800116666388,0.30275767867549086 +local,b1200k.cps2024.acs000.s0,national,households,1,0.04250326677483191,0.04250326677483191,0.042503266232915296 +local,b1200k.cps2024.acs000.s0,national,owner,1,0.018497025877870728,0.018497025877870728,0.04010859549407332 +local,b1200k.cps2024.acs000.s0,national,persons_0_17,1,0.0529098872300116,0.0529098872300116,0.03288093308337006 +local,b1200k.cps2024.acs000.s0,national,persons_18_64,1,0.027186266639073375,0.027186266639073375,0.028643647199660546 +local,b1200k.cps2024.acs000.s0,national,persons_65p,1,0.028122324928439996,0.028122324928439996,0.03895423703646453 +local,b1200k.cps2024.acs000.s0,national,persons_in_households,1,0.014850491703266876,0.014850491703266876,0.007468807605125023 +local,b1200k.cps2024.acs000.s0,national,persons_male,1,0.0296574753233379,0.0296574753233379,0.030150509781627526 +local,b1200k.cps2024.acs000.s0,national,persons_total,1,0.010179970427735854,0.010179970427735854,0.017379591290167525 +local,b1200k.cps2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5734096210909452,0.5734096210909452,0.6395411932654765 +local,b1200k.cps2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.10512361643159428,0.10512361643159428,0.09886944608007787 +local,b1200k.cps2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.21387371176109132,0.21387371176109132,0.20837958115855362 +local,b1200k.cps2024.acs000.s0,national,renter,1,0.052680114395864,0.052680114395864,0.012242781550688111 +local,b1200k.cps2024.acs000.s0,state,households,51,0.04509446137444519,0.035591398316802865,0.041131832400175525 +local,b1200k.cps2024.acs000.s0,state,owner,51,0.03735779135747842,0.0328148458904881,0.047374454375478325 +local,b1200k.cps2024.acs000.s0,state,persons_0_17,51,0.0608430465769432,0.05925565294492145,0.05938231280038761 +local,b1200k.cps2024.acs000.s0,state,persons_18_64,51,0.032236174547928695,0.028585606009608588,0.03622043144079596 +local,b1200k.cps2024.acs000.s0,state,persons_65p,51,0.026866327734650825,0.009907943655028936,0.05328853265489556 +local,b1200k.cps2024.acs000.s0,state,persons_in_households,51,0.01952012057169996,0.016475247629454556,0.01986143555982169 +local,b1200k.cps2024.acs000.s0,state,persons_male,51,0.03410085358804972,0.03223740330041886,0.03069101486431141 +local,b1200k.cps2024.acs000.s0,state,persons_total,51,0.01647040865920467,0.01455562626142054,0.01840903075160598 +local,b1200k.cps2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.46846268457971546,0.4458535292488854,0.5260015221555049 +local,b1200k.cps2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.12988412655697323,0.10772283514220297,0.12759779821473768 +local,b1200k.cps2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.21017842010863508,0.21588794454882224,0.2025211568796707 +local,b1200k.cps2024.acs000.s0,state,renter,51,0.08980259398304453,0.0775690992009007,0.07151289876278223 +local,b1200k.cps2024.acs100.s0,cd,households,436,0.046274654721472366,0.03574221851605327,0.01853937197230943 +local,b1200k.cps2024.acs100.s0,cd,owner,436,0.07326928615038059,0.051809614720535246,0.031085600049497085 +local,b1200k.cps2024.acs100.s0,cd,persons_0_17,436,0.09287279893063863,0.0828143539740732,0.06602954734043533 +local,b1200k.cps2024.acs100.s0,cd,persons_18_64,436,0.05124578291564259,0.04364605009904164,0.030278548769655505 +local,b1200k.cps2024.acs100.s0,cd,persons_65p,436,0.06941074787589568,0.060294530530786566,0.03688986989816291 +local,b1200k.cps2024.acs100.s0,cd,persons_male,436,0.032307011354175144,0.024619955414711663,0.0358491426487685 +local,b1200k.cps2024.acs100.s0,cd,persons_total,436,0.016409115483998666,0.007938841542176112,0.02858447871974891 +local,b1200k.cps2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.10530242189777947,0.07326368418659021,0.09657477627699504 +local,b1200k.cps2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.324012917272704,0.2701136395841787,0.3160250987957435 +local,b1200k.cps2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2808662477301605,0.2512192577565679,0.27600633235071437 +local,b1200k.cps2024.acs100.s0,cd,renter,436,0.13277144787225295,0.12347808007696831,0.06636123665010386 +local,b1200k.cps2024.acs100.s0,county,households,850,0.08484494902731046,0.05813715321045412,0.04220600709712167 +local,b1200k.cps2024.acs100.s0,county,owner,850,0.10629675717950073,0.07359410254361885,0.055121571185418446 +local,b1200k.cps2024.acs100.s0,county,persons_0_17,850,0.16397524760057663,0.11615400378329434,0.11295370503489499 +local,b1200k.cps2024.acs100.s0,county,persons_18_64,850,0.10614320565408297,0.08386267837286268,0.06288397767703105 +local,b1200k.cps2024.acs100.s0,county,persons_65p,850,0.12447708453398447,0.08742965801432043,0.07549011338819409 +local,b1200k.cps2024.acs100.s0,county,persons_in_households,850,0.08682741883721051,0.05911538542050879,0.058172003679532666 +local,b1200k.cps2024.acs100.s0,county,persons_male,850,0.09267370108962866,0.06550410058409162,0.06346029685686085 +local,b1200k.cps2024.acs100.s0,county,persons_total,850,0.08580026053541374,0.060207398927061964,0.055873629804155465 +local,b1200k.cps2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.17570527031902322,0.1176186370343222,0.1371770062939914 +local,b1200k.cps2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.40287335280107234,0.3321260980525405,0.39405333793325886 +local,b1200k.cps2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3411549237699652,0.27895779674664,0.3227460175817711 +local,b1200k.cps2024.acs100.s0,county,renter,850,0.18954024808511383,0.15306329357186033,0.11310100408398117 +local,b1200k.cps2024.acs100.s0,national,households,1,0.012175309980062282,0.012175309980062282,0.0019178984047857172 +local,b1200k.cps2024.acs100.s0,national,owner,1,0.04856891926099594,0.04856891926099594,0.002702343456393556 +local,b1200k.cps2024.acs100.s0,national,persons_0_17,1,0.08277958140016241,0.08277958140016241,0.03753367808220693 +local,b1200k.cps2024.acs100.s0,national,persons_18_64,1,0.04788893231237839,0.04788893231237839,0.019149152886607755 +local,b1200k.cps2024.acs100.s0,national,persons_65p,1,0.0005424384587267072,0.0005424384587267072,0.012569504039505151 +local,b1200k.cps2024.acs100.s0,national,persons_in_households,1,0.00577856031282373,0.00577856031282373,0.01627147507773764 +local,b1200k.cps2024.acs100.s0,national,persons_male,1,0.02747550133788194,0.02747550133788194,0.028829333555351742 +local,b1200k.cps2024.acs100.s0,national,persons_total,1,0.011148696973136012,0.011148696973136012,0.01737959129184257 +local,b1200k.cps2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.033535177487716485,0.033535177487716485,0.014576211930611994 +local,b1200k.cps2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.1333578711342095,0.1333578711342095,0.13006231605995777 +local,b1200k.cps2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.23867679099986996,0.23867679099986996,0.23578172915023476 +local,b1200k.cps2024.acs100.s0,national,renter,1,0.10451380892859144,0.10451380892859144,0.046599562576231456 +local,b1200k.cps2024.acs100.s0,state,households,51,0.02527393100391429,0.021351601722417936,0.007309502108102353 +local,b1200k.cps2024.acs100.s0,state,owner,51,0.041011366064243354,0.03732301354518479,0.007956445746875313 +local,b1200k.cps2024.acs100.s0,state,persons_0_17,51,0.07597817693527859,0.07266306676477217,0.03983615145369346 +local,b1200k.cps2024.acs100.s0,state,persons_18_64,51,0.04900786566752914,0.04139923129218852,0.02119995268528968 +local,b1200k.cps2024.acs100.s0,state,persons_65p,51,0.012303310947646074,0.0066299788378516,0.01696312975849606 +local,b1200k.cps2024.acs100.s0,state,persons_in_households,51,0.012152720338799713,0.009137363537071739,0.017392141152719524 +local,b1200k.cps2024.acs100.s0,state,persons_male,51,0.029264363553987895,0.025656909556303658,0.025028450815249407 +local,b1200k.cps2024.acs100.s0,state,persons_total,51,0.01696487521330179,0.011673851200797255,0.017679885233477 +local,b1200k.cps2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.04150212207820046,0.03091992557990538,0.016998214718637855 +local,b1200k.cps2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.1854452793757492,0.15848143452435748,0.19275625998480928 +local,b1200k.cps2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.22689553118972805,0.18183869711975348,0.21524820360835026 +local,b1200k.cps2024.acs100.s0,state,renter,51,0.12684943879680874,0.1277888035276366,0.059164123927165455 +local,b300k.cps0.acs100.s0,cd,households,436,0.04529626140083762,0.03368807031822692,0.04322853287263069 +local,b300k.cps0.acs100.s0,cd,owner,436,0.0762801250618267,0.05972208304540799,0.05213620225582097 +local,b300k.cps0.acs100.s0,cd,persons_0_17,436,0.093022494177217,0.07910073529552594,0.10494720762950266 +local,b300k.cps0.acs100.s0,cd,persons_18_64,436,0.06089857692307905,0.05454950464744529,0.05613597472362423 +local,b300k.cps0.acs100.s0,cd,persons_65p,436,0.09265128757862515,0.07331616736114019,0.0744767392215725 +local,b300k.cps0.acs100.s0,cd,persons_male,436,0.04523877504616321,0.03538528642133471,0.06214293608612152 +local,b300k.cps0.acs100.s0,cd,persons_total,436,0.024944595207809343,0.01026823528330732,0.05440944235155279 +local,b300k.cps0.acs100.s0,cd,real_estate_taxes_aggregate,436,0.15014060330399664,0.11265871298405572,0.12557570281482808 +local,b300k.cps0.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3412483185404294,0.29203537637449073,0.33380481079299806 +local,b300k.cps0.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2996997451984493,0.27391399132463157,0.2927730536848693 +local,b300k.cps0.acs100.s0,cd,renter,436,0.1423737411598221,0.13099962357474376,0.09526001317840402 +local,b300k.cps0.acs100.s0,county,households,850,0.12660267295148706,0.08184826184910457,0.09540659716234932 +local,b300k.cps0.acs100.s0,county,owner,850,0.16114805764124418,0.11503227315676215,0.11321934454813151 +local,b300k.cps0.acs100.s0,county,persons_0_17,850,0.24945855196699787,0.18499993573883894,0.21053173939356262 +local,b300k.cps0.acs100.s0,county,persons_18_64,850,0.15094470065613297,0.10951646398937681,0.11934210248312367 +local,b300k.cps0.acs100.s0,county,persons_65p,850,0.2061940591333088,0.15201651481805306,0.15262937809432847 +local,b300k.cps0.acs100.s0,county,persons_in_households,850,0.13902608495755045,0.09106285901195135,0.11398849291446916 +local,b300k.cps0.acs100.s0,county,persons_male,850,0.14930508229761727,0.1024187376555585,0.12052437142125733 +local,b300k.cps0.acs100.s0,county,persons_total,850,0.13567904575421638,0.09049099475039414,0.11074687174432955 +local,b300k.cps0.acs100.s0,county,real_estate_taxes_aggregate,850,0.23838814848167827,0.1662169833801253,0.19720544801317863 +local,b300k.cps0.acs100.s0,county,rent_contract_annual_aggregate,850,0.4231897897295854,0.3542291734952697,0.4110532876094806 +local,b300k.cps0.acs100.s0,county,rent_gross_annual_aggregate,850,0.37382184448635813,0.32120879223113785,0.3504890761247458 +local,b300k.cps0.acs100.s0,county,renter,850,0.2538214087371311,0.202607740078541,0.20812164238219566 +local,b300k.cps0.acs100.s0,national,households,1,0.008196546387598057,0.008196546387598057,0.002684358353721325 +local,b300k.cps0.acs100.s0,national,owner,1,0.04120798093656324,0.04120798093656324,0.003712530185146309 +local,b300k.cps0.acs100.s0,national,persons_0_17,1,0.0711949985414438,0.0711949985414438,0.04130804089676926 +local,b300k.cps0.acs100.s0,national,persons_18_64,1,0.056550622594234906,0.056550622594234906,0.01854102618658787 +local,b300k.cps0.acs100.s0,national,persons_65p,1,0.03474183633722827,0.03474183633722827,0.015019101065131464 +local,b300k.cps0.acs100.s0,national,persons_in_households,1,0.010601845054150263,0.010601845054150263,0.017586017401617055 +local,b300k.cps0.acs100.s0,national,persons_male,1,0.028142052192689414,0.028142052192689414,0.028762420524748044 +local,b300k.cps0.acs100.s0,national,persons_total,1,0.012718952398975698,0.012718952398975698,0.017379591291668196 +local,b300k.cps0.acs100.s0,national,real_estate_taxes_aggregate,1,0.08931545551836428,0.08931545551836428,0.019553269229985203 +local,b300k.cps0.acs100.s0,national,rent_contract_annual_aggregate,1,0.13647438679518464,0.13647438679518464,0.12783482357053205 +local,b300k.cps0.acs100.s0,national,rent_gross_annual_aggregate,1,0.2414145712495077,0.2414145712495077,0.2338249332899958 +local,b300k.cps0.acs100.s0,national,renter,1,0.1002923329998615,0.1002923329998615,0.04561075648522626 +local,b300k.cps0.acs100.s0,state,households,51,0.0245538417474022,0.01957488338296766,0.019712368503882405 +local,b300k.cps0.acs100.s0,state,owner,51,0.043096053309859585,0.036447396977640496,0.021826389522271242 +local,b300k.cps0.acs100.s0,state,persons_0_17,51,0.06789457804655752,0.0669733304258783,0.06665709446074423 +local,b300k.cps0.acs100.s0,state,persons_18_64,51,0.0546424544684552,0.05666087765509634,0.029220181226598585 +local,b300k.cps0.acs100.s0,state,persons_65p,51,0.04127864769718796,0.027012319952938395,0.03404049733309985 +local,b300k.cps0.acs100.s0,state,persons_in_households,51,0.017824039482263406,0.013153553600407661,0.02891261494934966 +local,b300k.cps0.acs100.s0,state,persons_male,51,0.03178908433977666,0.030162177333585793,0.03837719133159759 +local,b300k.cps0.acs100.s0,state,persons_total,51,0.0203020184947375,0.01604779094062004,0.027728537498343205 +local,b300k.cps0.acs100.s0,state,real_estate_taxes_aggregate,51,0.08011002565280907,0.07254521640560685,0.04023456724448698 +local,b300k.cps0.acs100.s0,state,rent_contract_annual_aggregate,51,0.2086998349863273,0.18029149843866682,0.20541271712243428 +local,b300k.cps0.acs100.s0,state,rent_gross_annual_aggregate,51,0.22919215159296444,0.20588378431655924,0.2238207675554527 +local,b300k.cps0.acs100.s0,state,renter,51,0.11750032765197312,0.12399652707351162,0.062139979965687715 +local,b300k.cps2022-2023-2024.acs000.s0,cd,households,436,0.07176582320103521,0.055382221874655885,0.05903095626619854 +local,b300k.cps2022-2023-2024.acs000.s0,cd,owner,436,0.13077464482944798,0.07697896579552113,0.14579026036401566 +local,b300k.cps2022-2023-2024.acs000.s0,cd,persons_0_17,436,0.09628588245716772,0.07628887530976575,0.11811895800745933 +local,b300k.cps2022-2023-2024.acs000.s0,cd,persons_18_64,436,0.04864365408667055,0.03839781021908569,0.055343312515888345 +local,b300k.cps2022-2023-2024.acs000.s0,cd,persons_65p,436,0.10439839129893135,0.08549345350214588,0.13779353565170702 +local,b300k.cps2022-2023-2024.acs000.s0,cd,persons_male,436,0.04674785178599,0.03918142201407894,0.05510136386003589 +local,b300k.cps2022-2023-2024.acs000.s0,cd,persons_total,436,0.027833358305226572,0.019914221038084653,0.04517911961156129 +local,b300k.cps2022-2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.5198337567161706,0.5571267795776436,0.5783161755374594 +local,b300k.cps2022-2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.32163411234953027,0.2668222716656969,0.3109979078913162 +local,b300k.cps2022-2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.30205483763376745,0.27679432700871776,0.2851390393194523 +local,b300k.cps2022-2023-2024.acs000.s0,cd,renter,436,0.2575302699970738,0.2072335112269349,0.23258087301847485 +local,b300k.cps2022-2023-2024.acs000.s0,county,households,850,0.11582953967656374,0.08311806443685628,0.09016678093400855 +local,b300k.cps2022-2023-2024.acs000.s0,county,owner,850,0.1667762703522567,0.12580151553324326,0.15121786449626848 +local,b300k.cps2022-2023-2024.acs000.s0,county,persons_0_17,850,0.20210999256961815,0.14393247296356437,0.17027315603983867 +local,b300k.cps2022-2023-2024.acs000.s0,county,persons_18_64,850,0.12382653022476457,0.09009110279635756,0.10153917823357125 +local,b300k.cps2022-2023-2024.acs000.s0,county,persons_65p,850,0.2164276218762821,0.15677834494043436,0.18187007262415478 +local,b300k.cps2022-2023-2024.acs000.s0,county,persons_in_households,850,0.10008815880426034,0.06265290447408381,0.08501889085740987 +local,b300k.cps2022-2023-2024.acs000.s0,county,persons_male,850,0.10970965736658474,0.07460187564956655,0.09207474532446963 +local,b300k.cps2022-2023-2024.acs000.s0,county,persons_total,850,0.09577953545809842,0.061354217511304716,0.08103649104870823 +local,b300k.cps2022-2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5399055977781078,0.5750091080706756,0.5670911784296876 +local,b300k.cps2022-2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.41634158341113225,0.32651414462158634,0.4047348718273917 +local,b300k.cps2022-2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.37345180629685526,0.3253628235141467,0.3496081604080735 +local,b300k.cps2022-2023-2024.acs000.s0,county,renter,850,0.3481660668884695,0.2624264100491089,0.30806271992692164 +local,b300k.cps2022-2023-2024.acs000.s0,national,households,1,0.04038778054745855,0.04038778054745855,0.04038778011161412 +local,b300k.cps2022-2023-2024.acs000.s0,national,owner,1,0.031769843059361966,0.031769843059361966,0.04504294266327352 +local,b300k.cps2022-2023-2024.acs000.s0,national,persons_0_17,1,0.05335275616355593,0.05335275616355593,0.021094263093460124 +local,b300k.cps2022-2023-2024.acs000.s0,national,persons_18_64,1,0.02210265804869515,0.02210265804869515,0.02674863655274084 +local,b300k.cps2022-2023-2024.acs000.s0,national,persons_65p,1,0.02695231188264303,0.02695231188264303,0.018547026346138182 +local,b300k.cps2022-2023-2024.acs000.s0,national,persons_in_households,1,0.01831982579957464,0.01831982579957464,0.007468807603606707 +local,b300k.cps2022-2023-2024.acs000.s0,national,persons_male,1,0.022848910490086145,0.022848910490086145,0.03089045646952046 +local,b300k.cps2022-2023-2024.acs000.s0,national,persons_total,1,0.006796204635752092,0.006796204635752092,0.017379591291648393 +local,b300k.cps2022-2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5791275545736061,0.5791275545736061,0.6659411721508932 +local,b300k.cps2022-2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.13271291569831403,0.13271291569831403,0.1311082630902956 +local,b300k.cps2022-2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.23811021394832432,0.23811021394832432,0.23670056718390284 +local,b300k.cps2022-2023-2024.acs000.s0,national,renter,1,0.022678066957787082,0.022678066957787082,0.00224421283630985 +local,b300k.cps2022-2023-2024.acs000.s0,state,households,51,0.040794298365157716,0.025714019289378613,0.038818772971577764 +local,b300k.cps2022-2023-2024.acs000.s0,state,owner,51,0.037679213089049646,0.03576370522836516,0.0493736484367459 +local,b300k.cps2022-2023-2024.acs000.s0,state,persons_0_17,51,0.058690577317008864,0.05453619096108028,0.05125129793589482 +local,b300k.cps2022-2023-2024.acs000.s0,state,persons_18_64,51,0.026591511456142,0.021865890099081187,0.02908260558133954 +local,b300k.cps2022-2023-2024.acs000.s0,state,persons_65p,51,0.023683561381602998,0.008105949099810756,0.033742093722682526 +local,b300k.cps2022-2023-2024.acs000.s0,state,persons_in_households,51,0.021503972768861762,0.020185985857752338,0.020461498374014835 +local,b300k.cps2022-2023-2024.acs000.s0,state,persons_male,51,0.026084316564972832,0.02209434328105044,0.030540574782717347 +local,b300k.cps2022-2023-2024.acs000.s0,state,persons_total,51,0.013478996606520343,0.012611569576091799,0.017719590215262444 +local,b300k.cps2022-2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4707246640806276,0.4609390162143502,0.5512094530501027 +local,b300k.cps2022-2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.1464880057283141,0.13772725735714203,0.1468564716660885 +local,b300k.cps2022-2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.23682799150974748,0.22741714367495747,0.23190637634799505 +local,b300k.cps2022-2023-2024.acs000.s0,state,renter,51,0.08619150219716405,0.07013086790757052,0.05874007939622599 +local,b300k.cps2022-2023-2024.acs100.s0,cd,households,436,0.06410231959784335,0.049336763766036185,0.054962073532234944 +local,b300k.cps2022-2023-2024.acs100.s0,cd,owner,436,0.10815086206599014,0.06832574180324097,0.10415262407300314 +local,b300k.cps2022-2023-2024.acs100.s0,cd,persons_0_17,436,0.0913922054659029,0.07247535900327852,0.09819552657666308 +local,b300k.cps2022-2023-2024.acs100.s0,cd,persons_18_64,436,0.04569269944266278,0.03904616241698438,0.049531410622278046 +local,b300k.cps2022-2023-2024.acs100.s0,cd,persons_65p,436,0.08973887150077262,0.07377186151167636,0.09944979837866572 +local,b300k.cps2022-2023-2024.acs100.s0,cd,persons_male,436,0.03820442989257093,0.031830101469290537,0.05434137605234831 +local,b300k.cps2022-2023-2024.acs100.s0,cd,persons_total,436,0.020100928563813396,0.015005646744144407,0.04628623078305049 +local,b300k.cps2022-2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.3338387001872945,0.3548285245742132,0.3120468833971771 +local,b300k.cps2022-2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.32417204465147254,0.27497601770786456,0.31339907708977893 +local,b300k.cps2022-2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.28620281442467804,0.25498455070230475,0.2751987054799509 +local,b300k.cps2022-2023-2024.acs100.s0,cd,renter,436,0.1943201993769533,0.15794086287580683,0.15814508010758657 +local,b300k.cps2022-2023-2024.acs100.s0,county,households,850,0.12351968709514116,0.091307275608778,0.09608167916716849 +local,b300k.cps2022-2023-2024.acs100.s0,county,owner,850,0.1605704435244487,0.11926345673198596,0.13072067032095197 +local,b300k.cps2022-2023-2024.acs100.s0,county,persons_0_17,850,0.21106737982308207,0.14222230119658347,0.1785360378394958 +local,b300k.cps2022-2023-2024.acs100.s0,county,persons_18_64,850,0.1380127026257903,0.10145571015639177,0.10923617451481231 +local,b300k.cps2022-2023-2024.acs100.s0,county,persons_65p,850,0.19680587081828343,0.14421457065579762,0.16056855475526624 +local,b300k.cps2022-2023-2024.acs100.s0,county,persons_in_households,850,0.11930547919112955,0.08034834606499225,0.09869100340395388 +local,b300k.cps2022-2023-2024.acs100.s0,county,persons_male,850,0.12908530415467306,0.09094281036679805,0.10897061665601862 +local,b300k.cps2022-2023-2024.acs100.s0,county,persons_total,850,0.1163407669896022,0.08297568535775585,0.09736080084638134 +local,b300k.cps2022-2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.39206289625989366,0.38681417828896036,0.3344464462788473 +local,b300k.cps2022-2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.41770124075168724,0.33082458695654515,0.39866580565532195 +local,b300k.cps2022-2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.37319737906153977,0.31135486016599756,0.33975327300886676 +local,b300k.cps2022-2023-2024.acs100.s0,county,renter,850,0.2900297219552528,0.22829939490470114,0.23413376933474014 +local,b300k.cps2022-2023-2024.acs100.s0,national,households,1,0.031789861527650794,0.031789861527650794,0.02283118810246568 +local,b300k.cps2022-2023-2024.acs100.s0,national,owner,1,0.046265263320552724,0.046265263320552724,0.028899582704201544 +local,b300k.cps2022-2023-2024.acs100.s0,national,persons_0_17,1,0.06241040313488423,0.06241040313488423,0.030152749524834207 +local,b300k.cps2022-2023-2024.acs100.s0,national,persons_18_64,1,0.031678724065861065,0.031678724065861065,0.02321466788614161 +local,b300k.cps2022-2023-2024.acs100.s0,national,persons_65p,1,0.014220160036119076,0.014220160036119076,0.017450720137209847 +local,b300k.cps2022-2023-2024.acs100.s0,national,persons_in_households,1,0.009483156388690349,0.009483156388690349,0.0033497610583094885 +local,b300k.cps2022-2023-2024.acs100.s0,national,persons_male,1,0.02170356681211316,0.02170356681211316,0.0292731874081316 +local,b300k.cps2022-2023-2024.acs100.s0,national,persons_total,1,0.008359542265213817,0.008359542265213817,0.017379591291877446 +local,b300k.cps2022-2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.36121002256050494,0.36121002256050494,0.366073693434801 +local,b300k.cps2022-2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.11763834935069972,0.11763834935069972,0.12904528661128503 +local,b300k.cps2022-2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.2248675883664466,0.2248675883664466,0.23488829448127344 +local,b300k.cps2022-2023-2024.acs100.s0,national,renter,1,0.035648901384613255,0.035648901384613255,0.027006558627955594 +local,b300k.cps2022-2023-2024.acs100.s0,state,households,51,0.03333224958564468,0.023820372179265307,0.029729572260914973 +local,b300k.cps2022-2023-2024.acs100.s0,state,owner,51,0.04265957497176886,0.03843249381497831,0.03673584714925406 +local,b300k.cps2022-2023-2024.acs100.s0,state,persons_0_17,51,0.0618055880525289,0.05828886740708684,0.05180045120449306 +local,b300k.cps2022-2023-2024.acs100.s0,state,persons_18_64,51,0.033874273142902034,0.030843809939928996,0.03150866407221119 +local,b300k.cps2022-2023-2024.acs100.s0,state,persons_65p,51,0.016318849915561,0.008180190048629158,0.034800252184436976 +local,b300k.cps2022-2023-2024.acs100.s0,state,persons_in_households,51,0.012480357336173063,0.010452888511227033,0.022383242660041925 +local,b300k.cps2022-2023-2024.acs100.s0,state,persons_male,51,0.023308729392955144,0.017969092001214486,0.03616090096195592 +local,b300k.cps2022-2023-2024.acs100.s0,state,persons_total,51,0.013918473754918686,0.012341934397470066,0.02558194529369862 +local,b300k.cps2022-2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.3336344503566154,0.33230610815861905,0.30258258161320495 +local,b300k.cps2022-2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.14521945498721503,0.11521576685408129,0.1534614967585407 +local,b300k.cps2022-2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.21030231322232512,0.2087067182984353,0.20861372659058267 +local,b300k.cps2022-2023-2024.acs100.s0,state,renter,51,0.09087132769143302,0.0830592292789683,0.05765325898984831 +local,b300k.cps2022-2023-2024.acs100.s1,cd,households,436,0.06382090142668864,0.04909639050120458,0.05460589124685475 +local,b300k.cps2022-2023-2024.acs100.s1,cd,owner,436,0.10489526962976212,0.0644851335293008,0.10271980464673341 +local,b300k.cps2022-2023-2024.acs100.s1,cd,persons_0_17,436,0.08998191071840292,0.0712902176763402,0.09835007215083932 +local,b300k.cps2022-2023-2024.acs100.s1,cd,persons_18_64,436,0.04508827057615641,0.0372283807178165,0.05350098165738256 +local,b300k.cps2022-2023-2024.acs100.s1,cd,persons_65p,436,0.09333571383289092,0.07453477042574619,0.09995627300453121 +local,b300k.cps2022-2023-2024.acs100.s1,cd,persons_male,436,0.03666435662525591,0.03091816862465344,0.05356780667765004 +local,b300k.cps2022-2023-2024.acs100.s1,cd,persons_total,436,0.01965332505736181,0.014377296237290588,0.04381525638626839 +local,b300k.cps2022-2023-2024.acs100.s1,cd,real_estate_taxes_aggregate,436,0.3428186262755417,0.3509631657991412,0.3232398494938278 +local,b300k.cps2022-2023-2024.acs100.s1,cd,rent_contract_annual_aggregate,436,0.3201798428523723,0.2554380307164411,0.31229202196557954 +local,b300k.cps2022-2023-2024.acs100.s1,cd,rent_gross_annual_aggregate,436,0.2856250925121632,0.25581336162302404,0.27677378801964936 +local,b300k.cps2022-2023-2024.acs100.s1,cd,renter,436,0.19436431759993406,0.15872965092331814,0.15646844286840492 +local,b300k.cps2022-2023-2024.acs100.s1,county,households,850,0.12080870588992883,0.09172824287972159,0.09421033365906543 +local,b300k.cps2022-2023-2024.acs100.s1,county,owner,850,0.15387854766605982,0.11343371228237287,0.12898361874265155 +local,b300k.cps2022-2023-2024.acs100.s1,county,persons_0_17,850,0.21769026228973878,0.14883056171623799,0.18004659071278442 +local,b300k.cps2022-2023-2024.acs100.s1,county,persons_18_64,850,0.1334820678421939,0.09687295005598147,0.10409935096726328 +local,b300k.cps2022-2023-2024.acs100.s1,county,persons_65p,850,0.19418071622631433,0.14647729139604307,0.15894869564486916 +local,b300k.cps2022-2023-2024.acs100.s1,county,persons_in_households,850,0.11412897336064316,0.07558454323112376,0.09567362504185346 +local,b300k.cps2022-2023-2024.acs100.s1,county,persons_male,850,0.1215978160564806,0.087339683792924,0.10051269033781333 +local,b300k.cps2022-2023-2024.acs100.s1,county,persons_total,850,0.11154770952088373,0.07443857078583661,0.0933225358182413 +local,b300k.cps2022-2023-2024.acs100.s1,county,real_estate_taxes_aggregate,850,0.39461591541436253,0.3947566889119156,0.34138997462800813 +local,b300k.cps2022-2023-2024.acs100.s1,county,rent_contract_annual_aggregate,850,0.4235099795957325,0.3357115000119607,0.40099376211959503 +local,b300k.cps2022-2023-2024.acs100.s1,county,rent_gross_annual_aggregate,850,0.3770441938138787,0.3193072704969941,0.3395631844898292 +local,b300k.cps2022-2023-2024.acs100.s1,county,renter,850,0.29388393280761055,0.228404509883612,0.2394566484896744 +local,b300k.cps2022-2023-2024.acs100.s1,national,households,1,0.03335312640392665,0.03335312640392665,0.024794395277488928 +local,b300k.cps2022-2023-2024.acs100.s1,national,owner,1,0.04345167164685532,0.04345167164685532,0.025324766647941036 +local,b300k.cps2022-2023-2024.acs100.s1,national,persons_0_17,1,0.06066740748189807,0.06066740748189807,0.028992087919649804 +local,b300k.cps2022-2023-2024.acs100.s1,national,persons_18_64,1,0.031117253500857537,0.031117253500857537,0.023429146172018255 +local,b300k.cps2022-2023-2024.acs100.s1,national,persons_65p,1,0.015229516937032322,0.015229516937032322,0.016789814262298818 +local,b300k.cps2022-2023-2024.acs100.s1,national,persons_in_households,1,0.009112508147761062,0.009112508147761062,0.003339386531063656 +local,b300k.cps2022-2023-2024.acs100.s1,national,persons_male,1,0.022359371022443772,0.022359371022443772,0.030230184394261766 +local,b300k.cps2022-2023-2024.acs100.s1,national,persons_total,1,0.00857507954847087,0.00857507954847087,0.017379591291576717 +local,b300k.cps2022-2023-2024.acs100.s1,national,real_estate_taxes_aggregate,1,0.3652531192482867,0.3652531192482867,0.3748400477187738 +local,b300k.cps2022-2023-2024.acs100.s1,national,rent_contract_annual_aggregate,1,0.11316868512762504,0.11316868512762504,0.12851951123017968 +local,b300k.cps2022-2023-2024.acs100.s1,national,rent_gross_annual_aggregate,1,0.2209411013008827,0.2209411013008827,0.23442641409602114 +local,b300k.cps2022-2023-2024.acs100.s1,national,renter,1,0.02782926308754271,0.02782926308754271,0.0163427118127628 +local,b300k.cps2022-2023-2024.acs100.s1,state,households,51,0.03472601032313385,0.027525279046360485,0.02735163381759662 +local,b300k.cps2022-2023-2024.acs100.s1,state,owner,51,0.04372686386036193,0.045076292922304376,0.03220854081813725 +local,b300k.cps2022-2023-2024.acs100.s1,state,persons_0_17,51,0.0607745254072715,0.057302183987789045,0.05355871315044963 +local,b300k.cps2022-2023-2024.acs100.s1,state,persons_18_64,51,0.03408413598365645,0.02906039692463441,0.027238197395543753 +local,b300k.cps2022-2023-2024.acs100.s1,state,persons_65p,51,0.016914618225337838,0.006938390054620743,0.028673572469027384 +local,b300k.cps2022-2023-2024.acs100.s1,state,persons_in_households,51,0.013876969399054166,0.008952359569620611,0.021890576690053367 +local,b300k.cps2022-2023-2024.acs100.s1,state,persons_male,51,0.026060599112983612,0.021145906545648577,0.03131112356940419 +local,b300k.cps2022-2023-2024.acs100.s1,state,persons_total,51,0.015305372136508299,0.013829445000667325,0.02182359813314486 +local,b300k.cps2022-2023-2024.acs100.s1,state,real_estate_taxes_aggregate,51,0.32950746153531424,0.34276744394045655,0.3088903056845426 +local,b300k.cps2022-2023-2024.acs100.s1,state,rent_contract_annual_aggregate,51,0.14312654170374017,0.10635901904063909,0.16091490576517956 +local,b300k.cps2022-2023-2024.acs100.s1,state,rent_gross_annual_aggregate,51,0.21228838211284484,0.21508262316151394,0.2182614080634859 +local,b300k.cps2022-2023-2024.acs100.s1,state,renter,51,0.0925583071915544,0.08465932385937773,0.05324485130069417 +local,b300k.cps2022-2023-2024.acs100.s2,cd,households,436,0.0630346459213504,0.0456596296915949,0.05387121687949212 +local,b300k.cps2022-2023-2024.acs100.s2,cd,owner,436,0.10367401100759448,0.06263116204154726,0.10084961118595076 +local,b300k.cps2022-2023-2024.acs100.s2,cd,persons_0_17,436,0.08980396059636538,0.06573002872335616,0.10396800122316771 +local,b300k.cps2022-2023-2024.acs100.s2,cd,persons_18_64,436,0.04640006684032941,0.041121780858236485,0.05002635961526946 +local,b300k.cps2022-2023-2024.acs100.s2,cd,persons_65p,436,0.09312171862940918,0.0805747167651438,0.0985697921326312 +local,b300k.cps2022-2023-2024.acs100.s2,cd,persons_male,436,0.03863138744355694,0.03240505845377299,0.05523679661015942 +local,b300k.cps2022-2023-2024.acs100.s2,cd,persons_total,436,0.020661893438217244,0.015488871812135013,0.046462729275332286 +local,b300k.cps2022-2023-2024.acs100.s2,cd,real_estate_taxes_aggregate,436,0.3389105839554088,0.3569072627879908,0.31624422336631874 +local,b300k.cps2022-2023-2024.acs100.s2,cd,rent_contract_annual_aggregate,436,0.3182340110271937,0.2549142640916314,0.31155462308682835 +local,b300k.cps2022-2023-2024.acs100.s2,cd,rent_gross_annual_aggregate,436,0.2854922864892294,0.25289370925876486,0.27553400138773404 +local,b300k.cps2022-2023-2024.acs100.s2,cd,renter,436,0.18739668980059243,0.15336602313827913,0.15632248233515425 +local,b300k.cps2022-2023-2024.acs100.s2,county,households,850,0.12581022785265425,0.09515719102598036,0.09378508463464962 +local,b300k.cps2022-2023-2024.acs100.s2,county,owner,850,0.15620333303445397,0.11280657094969924,0.12610930452147198 +local,b300k.cps2022-2023-2024.acs100.s2,county,persons_0_17,850,0.2091670509386031,0.14699501166703793,0.18145174594691854 +local,b300k.cps2022-2023-2024.acs100.s2,county,persons_18_64,850,0.1376698544840719,0.1008623439709173,0.11049728350658153 +local,b300k.cps2022-2023-2024.acs100.s2,county,persons_65p,850,0.20335896423360683,0.14987545190496396,0.15756992656357788 +local,b300k.cps2022-2023-2024.acs100.s2,county,persons_in_households,850,0.11646066159339061,0.07676379809247888,0.0990745995105983 +local,b300k.cps2022-2023-2024.acs100.s2,county,persons_male,850,0.12428782220902371,0.08899711209104938,0.10514594684137929 +local,b300k.cps2022-2023-2024.acs100.s2,county,persons_total,850,0.11467034616430814,0.07426979998227112,0.09693953272037091 +local,b300k.cps2022-2023-2024.acs100.s2,county,real_estate_taxes_aggregate,850,0.3935715393540174,0.38954831682455887,0.33610850282071913 +local,b300k.cps2022-2023-2024.acs100.s2,county,rent_contract_annual_aggregate,850,0.4226972851582002,0.35013027869635016,0.4034052375814544 +local,b300k.cps2022-2023-2024.acs100.s2,county,rent_gross_annual_aggregate,850,0.3807108438128755,0.32367742622990525,0.34459933569726914 +local,b300k.cps2022-2023-2024.acs100.s2,county,renter,850,0.2918944750478307,0.23207556370689936,0.23085167418015046 +local,b300k.cps2022-2023-2024.acs100.s2,national,households,1,0.03128599730374296,0.03128599730374296,0.022425462343745668 +local,b300k.cps2022-2023-2024.acs100.s2,national,owner,1,0.04355530780625999,0.04355530780625999,0.02487343325459565 +local,b300k.cps2022-2023-2024.acs100.s2,national,persons_0_17,1,0.060507400202351326,0.060507400202351326,0.02493795042771259 +local,b300k.cps2022-2023-2024.acs100.s2,national,persons_18_64,1,0.0317721910689583,0.0317721910689583,0.024373101349739155 +local,b300k.cps2022-2023-2024.acs100.s2,national,persons_65p,1,0.015799979547139725,0.015799979547139725,0.015136287219120487 +local,b300k.cps2022-2023-2024.acs100.s2,national,persons_in_households,1,0.00881395970257263,0.00881395970257263,0.0032116078586647066 +local,b300k.cps2022-2023-2024.acs100.s2,national,persons_male,1,0.021579336188993894,0.021579336188993894,0.028793888062225634 +local,b300k.cps2022-2023-2024.acs100.s2,national,persons_total,1,0.009108678437864098,0.009108678437864098,0.017379591291621404 +local,b300k.cps2022-2023-2024.acs100.s2,national,real_estate_taxes_aggregate,1,0.36311681819421365,0.36311681819421365,0.36958236939275463 +local,b300k.cps2022-2023-2024.acs100.s2,national,rent_contract_annual_aggregate,1,0.12724124226547387,0.12724124226547387,0.1319312994116549 +local,b300k.cps2022-2023-2024.acs100.s2,national,rent_gross_annual_aggregate,1,0.23330348711409754,0.23330348711409754,0.23742358379298573 +local,b300k.cps2022-2023-2024.acs100.s2,national,renter,1,0.03330648701622636,0.03330648701622636,0.022082308540014823 +local,b300k.cps2022-2023-2024.acs100.s2,state,households,51,0.032788583094206986,0.02536491488794872,0.023725680491648735 +local,b300k.cps2022-2023-2024.acs100.s2,state,owner,51,0.04193377417189355,0.0357987269642112,0.029002895268317442 +local,b300k.cps2022-2023-2024.acs100.s2,state,persons_0_17,51,0.06169586389246413,0.0562726467258595,0.05567407681743994 +local,b300k.cps2022-2023-2024.acs100.s2,state,persons_18_64,51,0.033958416509746236,0.03162033419204518,0.029783437644543102 +local,b300k.cps2022-2023-2024.acs100.s2,state,persons_65p,51,0.017436453318553785,0.007109287685573199,0.029325220378664408 +local,b300k.cps2022-2023-2024.acs100.s2,state,persons_in_households,51,0.01320152555504123,0.009864661233196341,0.022200252461611364 +local,b300k.cps2022-2023-2024.acs100.s2,state,persons_male,51,0.025796754664306698,0.02001737850646812,0.032881620970388825 +local,b300k.cps2022-2023-2024.acs100.s2,state,persons_total,51,0.015197888904040911,0.01373881984371734,0.025249273649564613 +local,b300k.cps2022-2023-2024.acs100.s2,state,real_estate_taxes_aggregate,51,0.33303192111156854,0.33392759737425276,0.30670737513987084 +local,b300k.cps2022-2023-2024.acs100.s2,state,rent_contract_annual_aggregate,51,0.1505433477516905,0.11249815699958567,0.16133794028836196 +local,b300k.cps2022-2023-2024.acs100.s2,state,rent_gross_annual_aggregate,51,0.22387474484441955,0.21652357297584077,0.21528276283846245 +local,b300k.cps2022-2023-2024.acs100.s2,state,renter,51,0.08863316784748716,0.07178491423072017,0.05241661969934416 +local,b300k.cps2023-2024.acs000.s0,cd,households,436,0.07122282901813373,0.05445348444808632,0.053614520750817074 +local,b300k.cps2023-2024.acs000.s0,cd,owner,436,0.12873081842503145,0.07917785067267252,0.1444815335505615 +local,b300k.cps2023-2024.acs000.s0,cd,persons_0_17,436,0.09565917490159295,0.0696329361548251,0.12478861103159995 +local,b300k.cps2023-2024.acs000.s0,cd,persons_18_64,436,0.04914125974625012,0.039733870988383255,0.058743708228535384 +local,b300k.cps2023-2024.acs000.s0,cd,persons_65p,436,0.09861195596488724,0.08003176792263321,0.13699227201391515 +local,b300k.cps2023-2024.acs000.s0,cd,persons_male,436,0.04783607829452808,0.04025317999736433,0.05884683651812112 +local,b300k.cps2023-2024.acs000.s0,cd,persons_total,436,0.027225827787365285,0.019971907121036827,0.04886493140741495 +local,b300k.cps2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.5184537428124052,0.5547905281135597,0.5698652645724244 +local,b300k.cps2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.32578206767232565,0.27909645257908267,0.31469264573928035 +local,b300k.cps2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.29729126683000245,0.2694469815314571,0.2838529241053794 +local,b300k.cps2023-2024.acs000.s0,cd,renter,436,0.26254507611148464,0.2049320345298002,0.22968050589278796 +local,b300k.cps2023-2024.acs000.s0,county,households,850,0.11188685114858413,0.07967628640521403,0.08498367212326344 +local,b300k.cps2023-2024.acs000.s0,county,owner,850,0.16155119934760737,0.12249236395190756,0.15082548224521902 +local,b300k.cps2023-2024.acs000.s0,county,persons_0_17,850,0.20534740078316477,0.15141274359379978,0.1761961413648731 +local,b300k.cps2023-2024.acs000.s0,county,persons_18_64,850,0.12226941499081925,0.08647227101431904,0.10700797062471092 +local,b300k.cps2023-2024.acs000.s0,county,persons_65p,850,0.2064037857990984,0.15416112908510038,0.18115346083985567 +local,b300k.cps2023-2024.acs000.s0,county,persons_in_households,850,0.10000746153771713,0.0663127228934346,0.08877408961987057 +local,b300k.cps2023-2024.acs000.s0,county,persons_male,850,0.10663839418686838,0.07349748006131988,0.09538987885247817 +local,b300k.cps2023-2024.acs000.s0,county,persons_total,850,0.09540618797808244,0.05996171956358029,0.08495552849814238 +local,b300k.cps2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5292304709602085,0.5582253757889771,0.5565735457281109 +local,b300k.cps2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.4155687381426945,0.3385746595029875,0.40679322886452596 +local,b300k.cps2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.3628740985809136,0.31088223508081414,0.3478483126845342 +local,b300k.cps2023-2024.acs000.s0,county,renter,850,0.3509354366789933,0.26882928829753144,0.3152559717195768 +local,b300k.cps2023-2024.acs000.s0,national,households,1,0.04063176124869034,0.04063176124869034,0.04063176077374351 +local,b300k.cps2023-2024.acs000.s0,national,owner,1,0.024417012006406853,0.024417012006406853,0.042345165727939324 +local,b300k.cps2023-2024.acs000.s0,national,persons_0_17,1,0.05537492484615529,0.05537492484615529,0.027390231881220944 +local,b300k.cps2023-2024.acs000.s0,national,persons_18_64,1,0.023834100317264247,0.023834100317264247,0.0268050150704322 +local,b300k.cps2023-2024.acs000.s0,national,persons_65p,1,0.02400154467270538,0.02400154467270538,0.026233676447505128 +local,b300k.cps2023-2024.acs000.s0,national,persons_in_households,1,0.018234299368889085,0.018234299368889085,0.007468807603602755 +local,b300k.cps2023-2024.acs000.s0,national,persons_male,1,0.023741892974788334,0.023741892974788334,0.030408793666099887 +local,b300k.cps2023-2024.acs000.s0,national,persons_total,1,0.00687962162657239,0.00687962162657239,0.017379591291652247 +local,b300k.cps2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5774613187452756,0.5774613187452756,0.6562268648260717 +local,b300k.cps2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.12257561797004438,0.12257561797004438,0.1222749686343984 +local,b300k.cps2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.2292048540771437,0.2292048540771437,0.22894074123359048 +local,b300k.cps2023-2024.acs000.s0,national,renter,1,0.034919986286847816,0.034919986286847816,0.0025205865935754137 +local,b300k.cps2023-2024.acs000.s0,state,households,51,0.041962774796204666,0.030574426319391675,0.04016948176038674 +local,b300k.cps2023-2024.acs000.s0,state,owner,51,0.03492225640947477,0.031439240577629056,0.04757532621275756 +local,b300k.cps2023-2024.acs000.s0,state,persons_0_17,51,0.06095889189836722,0.0526779065558116,0.05483953711216335 +local,b300k.cps2023-2024.acs000.s0,state,persons_18_64,51,0.028450067750215163,0.02435395058572903,0.03073725927409018 +local,b300k.cps2023-2024.acs000.s0,state,persons_65p,51,0.021976683145644948,0.008423916736110251,0.039588997541003985 +local,b300k.cps2023-2024.acs000.s0,state,persons_in_households,51,0.021469303095219383,0.019962687231678402,0.01955854451458431 +local,b300k.cps2023-2024.acs000.s0,state,persons_male,51,0.029324847266300396,0.025065071353276378,0.031232583282333352 +local,b300k.cps2023-2024.acs000.s0,state,persons_total,51,0.013956183473796515,0.01179112146793636,0.018964847449261527 +local,b300k.cps2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4697578746444747,0.4576411595277243,0.5416227019420784 +local,b300k.cps2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.14521139057114885,0.12972367255020312,0.14160292476457162 +local,b300k.cps2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2280476962108802,0.22132591724723205,0.2199685049241719 +local,b300k.cps2023-2024.acs000.s0,state,renter,51,0.08539305519562446,0.07053415585112134,0.06435477021533259 +local,b300k.cps2023-2024.acs100.s0,cd,households,436,0.059421473053437195,0.04550369198527472,0.04810264997891757 +local,b300k.cps2023-2024.acs100.s0,cd,owner,436,0.0971033262097222,0.060697773846224524,0.08310383827346488 +local,b300k.cps2023-2024.acs100.s0,cd,persons_0_17,436,0.09044049645776298,0.0717742140590408,0.10115797654787498 +local,b300k.cps2023-2024.acs100.s0,cd,persons_18_64,436,0.04762768445510206,0.04204547224612972,0.050864185115396025 +local,b300k.cps2023-2024.acs100.s0,cd,persons_65p,436,0.08368978129194105,0.06601431198047798,0.08461932860175533 +local,b300k.cps2023-2024.acs100.s0,cd,persons_male,436,0.03764405224368487,0.029336185871946162,0.055839076005064214 +local,b300k.cps2023-2024.acs100.s0,cd,persons_total,436,0.018296684986297693,0.012566605003781137,0.0485463192051605 +local,b300k.cps2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.2564567348914509,0.2686816326185809,0.2102526769439945 +local,b300k.cps2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.33504748711189325,0.28190999135515327,0.3202053889884849 +local,b300k.cps2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2836056831442782,0.2533337066304112,0.27860549586486605 +local,b300k.cps2023-2024.acs100.s0,cd,renter,436,0.17181311101756505,0.14154574952156035,0.12801205780457262 +local,b300k.cps2023-2024.acs100.s0,county,households,850,0.12172802103756751,0.08599948248097233,0.09369935551642367 +local,b300k.cps2023-2024.acs100.s0,county,owner,850,0.15103693681884625,0.10884360417732974,0.11978550005293273 +local,b300k.cps2023-2024.acs100.s0,county,persons_0_17,850,0.22855267175109428,0.1622760916583218,0.19000776698181512 +local,b300k.cps2023-2024.acs100.s0,county,persons_18_64,850,0.13742418562655975,0.09890531177051105,0.11135210001064201 +local,b300k.cps2023-2024.acs100.s0,county,persons_65p,850,0.1932808482000384,0.14199736803563223,0.15311411284075127 +local,b300k.cps2023-2024.acs100.s0,county,persons_in_households,850,0.12008987713869741,0.07867587270838658,0.10472957916788693 +local,b300k.cps2023-2024.acs100.s0,county,persons_male,850,0.13267744819653582,0.09335261745718329,0.11200379817229747 +local,b300k.cps2023-2024.acs100.s0,county,persons_total,850,0.11711736010481581,0.07650176471756495,0.10265556765772516 +local,b300k.cps2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.32472671529985436,0.30793662851455295,0.24968300885360645 +local,b300k.cps2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.42140607859951373,0.33248733060681934,0.4031064691966803 +local,b300k.cps2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.371031844053087,0.313619294161821,0.3395014437392735 +local,b300k.cps2023-2024.acs100.s0,county,renter,850,0.27103972578732094,0.20586463996856044,0.21072750235659535 +local,b300k.cps2023-2024.acs100.s0,national,households,1,0.028444465658123967,0.028444465658123967,0.01622813986048555 +local,b300k.cps2023-2024.acs100.s0,national,owner,1,0.040979099356415964,0.040979099356415964,0.0185637728817818 +local,b300k.cps2023-2024.acs100.s0,national,persons_0_17,1,0.06570934648084932,0.06570934648084932,0.037168881908996844 +local,b300k.cps2023-2024.acs100.s0,national,persons_18_64,1,0.036461354265737135,0.036461354265737135,0.021405258145536843 +local,b300k.cps2023-2024.acs100.s0,national,persons_65p,1,0.006114493120364322,0.006114493120364322,0.019721236033055835 +local,b300k.cps2023-2024.acs100.s0,national,persons_in_households,1,0.005302886307644536,0.005302886307644536,0.008086271457001712 +local,b300k.cps2023-2024.acs100.s0,national,persons_male,1,0.023453762329567574,0.023453762329567574,0.028695428893634082 +local,b300k.cps2023-2024.acs100.s0,national,persons_total,1,0.009088404597104811,0.009088404597104811,0.017379591291705 +local,b300k.cps2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.27169620195596483,0.27169620195596483,0.2345658564217346 +local,b300k.cps2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.10810154811825258,0.10810154811825258,0.1242698815104491 +local,b300k.cps2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.21648974949149452,0.21648974949149452,0.23069322178107815 +local,b300k.cps2023-2024.acs100.s0,national,renter,1,0.03990741023627707,0.03990741023627707,0.029848196630025862 +local,b300k.cps2023-2024.acs100.s0,state,households,51,0.030165536909506286,0.022877371047466483,0.025384052373917356 +local,b300k.cps2023-2024.acs100.s0,state,owner,51,0.03825147074669324,0.032906146918039114,0.028873511573039103 +local,b300k.cps2023-2024.acs100.s0,state,persons_0_17,51,0.06423186389956909,0.06130094765956486,0.057898369342281576 +local,b300k.cps2023-2024.acs100.s0,state,persons_18_64,51,0.03803652419648801,0.03699216908963536,0.03114044991340005 +local,b300k.cps2023-2024.acs100.s0,state,persons_65p,51,0.011633012660147558,0.005437173395582616,0.03431761949732328 +local,b300k.cps2023-2024.acs100.s0,state,persons_in_households,51,0.010400908952785332,0.006578137526621315,0.024100213806170213 +local,b300k.cps2023-2024.acs100.s0,state,persons_male,51,0.02683768240122439,0.02322610724634671,0.03638023804000716 +local,b300k.cps2023-2024.acs100.s0,state,persons_total,51,0.01557068128220288,0.011677438268582786,0.026083135523212342 +local,b300k.cps2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.2571665715813046,0.2610918651772177,0.19667184532866613 +local,b300k.cps2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.15034201910303266,0.12599877374602794,0.1688786671295249 +local,b300k.cps2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.20102721198453644,0.18281317504164724,0.20586815296275546 +local,b300k.cps2023-2024.acs100.s0,state,renter,51,0.09023651314634132,0.08670365922098693,0.054246188130893436 +local,b300k.cps2024.acs000.s0,cd,households,436,0.07228325930772087,0.057943529129053144,0.05325389470712396 +local,b300k.cps2024.acs000.s0,cd,owner,436,0.1272978883971911,0.07844686688044047,0.14077060356552817 +local,b300k.cps2024.acs000.s0,cd,persons_0_17,436,0.10233307312783137,0.07763417328121466,0.1311649722369435 +local,b300k.cps2024.acs000.s0,cd,persons_18_64,436,0.0530837844412484,0.0439811468432365,0.0634839506501305 +local,b300k.cps2024.acs000.s0,cd,persons_65p,436,0.09923880200918955,0.08152374920384567,0.13998017631797427 +local,b300k.cps2024.acs000.s0,cd,persons_male,436,0.05190493480907868,0.043104940822452836,0.06229145930936586 +local,b300k.cps2024.acs000.s0,cd,persons_total,436,0.02916701759557991,0.02109846639500746,0.05264424882012382 +local,b300k.cps2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.522275459695462,0.5539156596333725,0.5528534080004882 +local,b300k.cps2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3302079061830655,0.2764327778520755,0.3179372350717971 +local,b300k.cps2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.2962073474653854,0.2733534045919597,0.2829032167660115 +local,b300k.cps2024.acs000.s0,cd,renter,436,0.27081398769929566,0.20993899250120052,0.23473340185005617 +local,b300k.cps2024.acs000.s0,county,households,850,0.10919693234952894,0.08010944315564165,0.0832784674286999 +local,b300k.cps2024.acs000.s0,county,owner,850,0.16013748621397125,0.11865639019618132,0.1498085561133901 +local,b300k.cps2024.acs000.s0,county,persons_0_17,850,0.20155127222514774,0.14565038326507374,0.18566076860806963 +local,b300k.cps2024.acs000.s0,county,persons_18_64,850,0.12162941434854813,0.08564090913930761,0.11424708179130634 +local,b300k.cps2024.acs000.s0,county,persons_65p,850,0.19596847085286484,0.1478061452216176,0.1836137625425742 +local,b300k.cps2024.acs000.s0,county,persons_in_households,850,0.10031404803362494,0.06915797161829003,0.09485734865046187 +local,b300k.cps2024.acs000.s0,county,persons_male,850,0.1115952994107755,0.0808424832485558,0.09915657570484801 +local,b300k.cps2024.acs000.s0,county,persons_total,850,0.09603745361785149,0.06511124590463963,0.09014898316489524 +local,b300k.cps2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.537152061988621,0.5702281636374589,0.5446751934509556 +local,b300k.cps2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.41371568625859784,0.3377755132258514,0.403997187213267 +local,b300k.cps2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.3537925135968278,0.29701539017545187,0.3407041948901364 +local,b300k.cps2024.acs000.s0,county,renter,850,0.35063114808939844,0.2665083154563561,0.3116467943447933 +local,b300k.cps2024.acs000.s0,national,households,1,0.04250326676390603,0.04250326676390603,0.04250326623243594 +local,b300k.cps2024.acs000.s0,national,owner,1,0.017353816166007077,0.017353816166007077,0.04010859549596169 +local,b300k.cps2024.acs000.s0,national,persons_0_17,1,0.06460219834591083,0.06460219834591083,0.03288093308214637 +local,b300k.cps2024.acs000.s0,national,persons_18_64,1,0.02706185905180554,0.02706185905180554,0.028643647198409762 +local,b300k.cps2024.acs000.s0,national,persons_65p,1,0.020051302589138113,0.020051302589138113,0.03895423703662803 +local,b300k.cps2024.acs000.s0,national,persons_in_households,1,0.018988422041065312,0.018988422041065312,0.007468807603647675 +local,b300k.cps2024.acs000.s0,national,persons_male,1,0.02722168355197946,0.02722168355197946,0.03015050978084711 +local,b300k.cps2024.acs000.s0,national,persons_total,1,0.0061440987768748,0.0061440987768748,0.017379591291608435 +local,b300k.cps2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5806068644369377,0.5806068644369377,0.6395411932654282 +local,b300k.cps2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.10442361057506373,0.10442361057506373,0.09886944608010037 +local,b300k.cps2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.2132587743062157,0.2132587743062157,0.2083795811585734 +local,b300k.cps2024.acs000.s0,national,renter,1,0.05451575266312578,0.05451575266312578,0.01224278155079332 +local,b300k.cps2024.acs000.s0,state,households,51,0.04426851542494705,0.035905526900568654,0.04113183240018178 +local,b300k.cps2024.acs000.s0,state,owner,51,0.03572940059284864,0.03159131548295778,0.0473744543754758 +local,b300k.cps2024.acs000.s0,state,persons_0_17,51,0.06952917901246436,0.0691322419909257,0.05938231280038831 +local,b300k.cps2024.acs000.s0,state,persons_18_64,51,0.03296569062381486,0.030217489863789127,0.03622043144079565 +local,b300k.cps2024.acs000.s0,state,persons_65p,51,0.022232490808574853,0.013921469536885774,0.05328853265489987 +local,b300k.cps2024.acs000.s0,state,persons_in_households,51,0.022335657786048065,0.019274563862044267,0.019861435559825554 +local,b300k.cps2024.acs000.s0,state,persons_male,51,0.032503874536105266,0.030642144296799685,0.03069101486430921 +local,b300k.cps2024.acs000.s0,state,persons_total,51,0.015827028214039817,0.014033408217703993,0.01840903075160705 +local,b300k.cps2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4736976783191567,0.46740158227106465,0.5260015221555048 +local,b300k.cps2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.1250666604301183,0.10404752009718551,0.12759779821473954 +local,b300k.cps2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2067198313404033,0.20211528485715094,0.2025211568796703 +local,b300k.cps2024.acs000.s0,state,renter,51,0.08583683545270428,0.08244708347186404,0.07151289876278501 +local,b300k.cps2024.acs100.s0,cd,households,436,0.05208398954989582,0.0399526147169474,0.0445186582648168 +local,b300k.cps2024.acs100.s0,cd,owner,436,0.0795746974647526,0.05174805149210723,0.06408132108321789 +local,b300k.cps2024.acs100.s0,cd,persons_0_17,436,0.0952483317036049,0.07774602767681336,0.1011149875638067 +local,b300k.cps2024.acs100.s0,cd,persons_18_64,436,0.050634669926959815,0.044113877823526534,0.053087998847227875 +local,b300k.cps2024.acs100.s0,cd,persons_65p,436,0.08249509187740686,0.06895168254603284,0.07579294253113192 +local,b300k.cps2024.acs100.s0,cd,persons_male,436,0.03820912358411058,0.030622914254916832,0.05742995594700321 +local,b300k.cps2024.acs100.s0,cd,persons_total,436,0.017792060225309558,0.009589211879171694,0.05020954772082696 +local,b300k.cps2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.15890234732855235,0.1466123896735694,0.138503910174953 +local,b300k.cps2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3338379717995298,0.2842094450185937,0.3277378477880494 +local,b300k.cps2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2880909346188736,0.26504156491779324,0.2850439607136127 +local,b300k.cps2024.acs100.s0,cd,renter,436,0.14978089316351892,0.12533564092353647,0.10562970911566646 +local,b300k.cps2024.acs100.s0,county,households,850,0.12437122307703412,0.08696270892106069,0.09604511971690513 +local,b300k.cps2024.acs100.s0,county,owner,850,0.14843366001124506,0.10174989119192966,0.11549907454876397 +local,b300k.cps2024.acs100.s0,county,persons_0_17,850,0.23766675224809172,0.16464254596582362,0.1968736402180397 +local,b300k.cps2024.acs100.s0,county,persons_18_64,850,0.14584222619157436,0.10494875282394336,0.1152949893009183 +local,b300k.cps2024.acs100.s0,county,persons_65p,850,0.18328225619397456,0.1332486844621427,0.14765770582025672 +local,b300k.cps2024.acs100.s0,county,persons_in_households,850,0.1300538155427436,0.08970361194921861,0.11037454032549172 +local,b300k.cps2024.acs100.s0,county,persons_male,850,0.14002375594550695,0.0991073702148601,0.11540155756888201 +local,b300k.cps2024.acs100.s0,county,persons_total,850,0.12647938513580415,0.08780010938309593,0.10711382447994193 +local,b300k.cps2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.25042977652818493,0.21105588504330303,0.2025009679662354 +local,b300k.cps2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.42824550242054304,0.3387368188587754,0.4115667347806425 +local,b300k.cps2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3773619895341284,0.3233593215358127,0.34975265949333967 +local,b300k.cps2024.acs100.s0,county,renter,850,0.25611290509662193,0.18385427145939065,0.20593617007171544 +local,b300k.cps2024.acs100.s0,national,households,1,0.02091352614166951,0.02091352614166951,0.009405048708776023 +local,b300k.cps2024.acs100.s0,national,owner,1,0.03668283188854364,0.03668283188854364,0.011149148171989243 +local,b300k.cps2024.acs100.s0,national,persons_0_17,1,0.07488081962189512,0.07488081962189512,0.03934535382767289 +local,b300k.cps2024.acs100.s0,national,persons_18_64,1,0.0427477880586083,0.0427477880586083,0.020760608153350738 +local,b300k.cps2024.acs100.s0,national,persons_65p,1,0.0017445376311779107,0.0017445376311779107,0.020145296515002298 +local,b300k.cps2024.acs100.s0,national,persons_in_households,1,0.00021721594099950213,0.00021721594099950213,0.012887804579998606 +local,b300k.cps2024.acs100.s0,national,persons_male,1,0.025932922322135548,0.025932922322135548,0.028825524095141112 +local,b300k.cps2024.acs100.s0,national,persons_total,1,0.009512994593500447,0.009512994593500447,0.017379591291554284 +local,b300k.cps2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.138672297813476,0.138672297813476,0.10519850185068137 +local,b300k.cps2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.11482351837133756,0.11482351837133756,0.12122007030868508 +local,b300k.cps2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.22239483048562952,0.22239483048562952,0.22801403971314627 +local,b300k.cps2024.acs100.s0,national,renter,1,0.055272339819343784,0.055272339819343784,0.03793725868236157 +local,b300k.cps2024.acs100.s0,state,households,51,0.026890301769934205,0.021209608240871387,0.023801392273112943 +local,b300k.cps2024.acs100.s0,state,owner,51,0.03551048068762924,0.031200153210801045,0.026253475518179904 +local,b300k.cps2024.acs100.s0,state,persons_0_17,51,0.06997459893832415,0.06827787625057027,0.060576324539654995 +local,b300k.cps2024.acs100.s0,state,persons_18_64,51,0.04313398744205638,0.03802388110130734,0.02961978201893944 +local,b300k.cps2024.acs100.s0,state,persons_65p,51,0.013960198059091513,0.005874988903060145,0.036465302363331495 +local,b300k.cps2024.acs100.s0,state,persons_in_households,51,0.011548226082214449,0.006737202908635657,0.02595010544588405 +local,b300k.cps2024.acs100.s0,state,persons_male,51,0.030256117225281275,0.025520842230080852,0.03638472546612089 +local,b300k.cps2024.acs100.s0,state,persons_total,51,0.016957280123489522,0.012963060110691323,0.02698706008569942 +local,b300k.cps2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.14229168180780657,0.13177606693704091,0.09423245701524154 +local,b300k.cps2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.17168618608863595,0.13743750283422457,0.18470102376411873 +local,b300k.cps2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.20268330139208438,0.17069731078013797,0.2070420821336953 +local,b300k.cps2024.acs100.s0,state,renter,51,0.09172075211778666,0.09159812615617859,0.05772056447604141 +local,b300k.cps2024.acs100.s1,cd,households,436,0.050256104144942366,0.039619102706861184,0.043666327344408395 +local,b300k.cps2024.acs100.s1,cd,owner,436,0.07883596562020644,0.053094894245417835,0.06446595871546629 +local,b300k.cps2024.acs100.s1,cd,persons_0_17,436,0.09616703391028766,0.07897352130681715,0.10131289177297828 +local,b300k.cps2024.acs100.s1,cd,persons_18_64,436,0.04999904245821185,0.042915995382444415,0.05527546733560979 +local,b300k.cps2024.acs100.s1,cd,persons_65p,436,0.08605020222565828,0.07297527466674437,0.0749841921549136 +local,b300k.cps2024.acs100.s1,cd,persons_male,436,0.03923357031851476,0.03161750878629356,0.059876637977190415 +local,b300k.cps2024.acs100.s1,cd,persons_total,436,0.018741035908028468,0.010017090778441592,0.050658066765181003 +local,b300k.cps2024.acs100.s1,cd,real_estate_taxes_aggregate,436,0.16011544476120926,0.15418074242266533,0.13922265124603075 +local,b300k.cps2024.acs100.s1,cd,rent_contract_annual_aggregate,436,0.3238223241532976,0.25753468138891117,0.3144112076841177 +local,b300k.cps2024.acs100.s1,cd,rent_gross_annual_aggregate,436,0.2799793334456679,0.24317387179786082,0.27424807769698756 +local,b300k.cps2024.acs100.s1,cd,renter,436,0.14637249857446868,0.12400563096322866,0.10866752087198374 +local,b300k.cps2024.acs100.s1,county,households,850,0.12022744339854113,0.08129938407139797,0.09244479905077944 +local,b300k.cps2024.acs100.s1,county,owner,850,0.14711114376008705,0.10624410516184174,0.10829972908532866 +local,b300k.cps2024.acs100.s1,county,persons_0_17,850,0.23674338687331953,0.17348640753263506,0.21066372424798901 +local,b300k.cps2024.acs100.s1,county,persons_18_64,850,0.1406477858217345,0.09863183896146585,0.11697017284834327 +local,b300k.cps2024.acs100.s1,county,persons_65p,850,0.18684965385210472,0.13553887780956325,0.14874591163846015 +local,b300k.cps2024.acs100.s1,county,persons_in_households,850,0.123704048965285,0.0832271476994933,0.110588593691157 +local,b300k.cps2024.acs100.s1,county,persons_male,850,0.13114091829657265,0.09017933893949476,0.11910281121417693 +local,b300k.cps2024.acs100.s1,county,persons_total,850,0.1214430512174932,0.08404395592515691,0.10785239755419546 +local,b300k.cps2024.acs100.s1,county,real_estate_taxes_aggregate,850,0.24885283534410546,0.20866081544017825,0.19817254415613586 +local,b300k.cps2024.acs100.s1,county,rent_contract_annual_aggregate,850,0.42407876100927805,0.3490597502772549,0.40114437891484006 +local,b300k.cps2024.acs100.s1,county,rent_gross_annual_aggregate,850,0.368782630526894,0.3185856765027671,0.344211001664788 +local,b300k.cps2024.acs100.s1,county,renter,850,0.25310238753614855,0.1948663899171929,0.20313929769454747 +local,b300k.cps2024.acs100.s1,national,households,1,0.01855606269740465,0.01855606269740465,0.007135480860673591 +local,b300k.cps2024.acs100.s1,national,owner,1,0.03493649966150303,0.03493649966150303,0.006760642135513097 +local,b300k.cps2024.acs100.s1,national,persons_0_17,1,0.07402785523229914,0.07402785523229914,0.03239665815108548 +local,b300k.cps2024.acs100.s1,national,persons_18_64,1,0.043619730396583276,0.043619730396583276,0.0220436135717044 +local,b300k.cps2024.acs100.s1,national,persons_65p,1,0.0015535304966949447,0.0015535304966949447,0.016185055455979563 +local,b300k.cps2024.acs100.s1,national,persons_in_households,1,0.0008738065428089663,0.0008738065428089663,0.012745124341986979 +local,b300k.cps2024.acs100.s1,national,persons_male,1,0.027005682714336843,0.027005682714336843,0.028988409494756603 +local,b300k.cps2024.acs100.s1,national,persons_total,1,0.010258248529065574,0.010258248529065574,0.017379591291681866 +local,b300k.cps2024.acs100.s1,national,real_estate_taxes_aggregate,1,0.14244043661994973,0.14244043661994973,0.10788924995015199 +local,b300k.cps2024.acs100.s1,national,rent_contract_annual_aggregate,1,0.1226793986555704,0.1226793986555704,0.12613857323223815 +local,b300k.cps2024.acs100.s1,national,rent_gross_annual_aggregate,1,0.22929602278670125,0.22929602278670125,0.23233482023432472 +local,b300k.cps2024.acs100.s1,national,renter,1,0.05988685592811738,0.05988685592811738,0.03680538251027018 +local,b300k.cps2024.acs100.s1,state,households,51,0.024856379651074203,0.02089422546403683,0.016509876960375154 +local,b300k.cps2024.acs100.s1,state,owner,51,0.03739516674582131,0.03280302454104196,0.01776575510010848 +local,b300k.cps2024.acs100.s1,state,persons_0_17,51,0.0741490778498965,0.07163908777080553,0.05779517814902032 +local,b300k.cps2024.acs100.s1,state,persons_18_64,51,0.04620513761385528,0.04432327303714027,0.03303962043118999 +local,b300k.cps2024.acs100.s1,state,persons_65p,51,0.014863564168590205,0.0070882432598845715,0.0328039014021689 +local,b300k.cps2024.acs100.s1,state,persons_in_households,51,0.012279117879535251,0.009454667416270988,0.025786709402797463 +local,b300k.cps2024.acs100.s1,state,persons_male,51,0.02941979835261487,0.02717513637246874,0.03465236347769676 +local,b300k.cps2024.acs100.s1,state,persons_total,51,0.0170243745529964,0.014198209337842152,0.026587166511169637 +local,b300k.cps2024.acs100.s1,state,real_estate_taxes_aggregate,51,0.1478621250265546,0.15279521408969463,0.09775079182205315 +local,b300k.cps2024.acs100.s1,state,rent_contract_annual_aggregate,51,0.17182588432815854,0.12584939421341665,0.1858112142185224 +local,b300k.cps2024.acs100.s1,state,rent_gross_annual_aggregate,51,0.21265527618112387,0.20457035444353971,0.21231117244279066 +local,b300k.cps2024.acs100.s1,state,renter,51,0.09424102336107078,0.09677070422873378,0.059409183848200924 +local,b300k.cps2024.acs100.s2,cd,households,436,0.052375890766634965,0.042241001353118285,0.04331851304134574 +local,b300k.cps2024.acs100.s2,cd,owner,436,0.0769097868837753,0.05408478711050134,0.06209214806116888 +local,b300k.cps2024.acs100.s2,cd,persons_0_17,436,0.09640829819672701,0.08125069998384504,0.10342165829279419 +local,b300k.cps2024.acs100.s2,cd,persons_18_64,436,0.05074428729176619,0.042602493585576176,0.05272373485245502 +local,b300k.cps2024.acs100.s2,cd,persons_65p,436,0.08102956858547522,0.06887572605760736,0.07597605451221584 +local,b300k.cps2024.acs100.s2,cd,persons_male,436,0.03992331798998311,0.03209525120290731,0.05751957426886549 +local,b300k.cps2024.acs100.s2,cd,persons_total,436,0.019662740449780596,0.010524297643569167,0.047740968379590465 +local,b300k.cps2024.acs100.s2,cd,real_estate_taxes_aggregate,436,0.15501215320842837,0.14727123061148178,0.13228862206640338 +local,b300k.cps2024.acs100.s2,cd,rent_contract_annual_aggregate,436,0.3250516992900199,0.27618772453876816,0.31819942924787176 +local,b300k.cps2024.acs100.s2,cd,rent_gross_annual_aggregate,436,0.288909068751206,0.25099667640845646,0.28118437560497095 +local,b300k.cps2024.acs100.s2,cd,renter,436,0.1458775076229155,0.13058306073692888,0.1065898955736187 +local,b300k.cps2024.acs100.s2,county,households,850,0.11992961299474034,0.08308894291128693,0.09529876221809666 +local,b300k.cps2024.acs100.s2,county,owner,850,0.14570334717609726,0.10469857633291157,0.11440609929049368 +local,b300k.cps2024.acs100.s2,county,persons_0_17,850,0.24190414757802012,0.1730776884089647,0.2042996714476425 +local,b300k.cps2024.acs100.s2,county,persons_18_64,850,0.14143634702543442,0.10347110541319082,0.11326194007444529 +local,b300k.cps2024.acs100.s2,county,persons_65p,850,0.18226364199800174,0.1329920272079482,0.1485364586129691 +local,b300k.cps2024.acs100.s2,county,persons_in_households,850,0.1243727886670147,0.08199950156429005,0.10562303715711137 +local,b300k.cps2024.acs100.s2,county,persons_male,850,0.13214356435032135,0.08401879174386084,0.11606407051368871 +local,b300k.cps2024.acs100.s2,county,persons_total,850,0.12184967425451228,0.07916159408903775,0.10342246146173768 +local,b300k.cps2024.acs100.s2,county,real_estate_taxes_aggregate,850,0.25004774424778775,0.2078762094906707,0.2012923720797865 +local,b300k.cps2024.acs100.s2,county,rent_contract_annual_aggregate,850,0.41641073152039193,0.33502977017564206,0.4198081193231573 +local,b300k.cps2024.acs100.s2,county,rent_gross_annual_aggregate,850,0.3645433157467302,0.3075916904683519,0.3598222288063871 +local,b300k.cps2024.acs100.s2,county,renter,850,0.2575849164202483,0.1989263594194099,0.21394875331770885 +local,b300k.cps2024.acs100.s2,national,households,1,0.020459073379147222,0.020459073379147222,0.009413301953973515 +local,b300k.cps2024.acs100.s2,national,owner,1,0.037714839716001716,0.037714839716001716,0.009173457161656365 +local,b300k.cps2024.acs100.s2,national,persons_0_17,1,0.07537946032449894,0.07537946032449894,0.041448735400090655 +local,b300k.cps2024.acs100.s2,national,persons_18_64,1,0.042495116017933966,0.042495116017933966,0.020082445625907344 +local,b300k.cps2024.acs100.s2,national,persons_65p,1,0.002026781832412868,0.002026781832412868,0.02036963746209138 +local,b300k.cps2024.acs100.s2,national,persons_in_households,1,7.548689569514204e-05,7.548689569514204e-05,0.012728549890750515 +local,b300k.cps2024.acs100.s2,national,persons_male,1,0.025913404118726367,0.025913404118726367,0.028652397462910772 +local,b300k.cps2024.acs100.s2,national,persons_total,1,0.009202254800806829,0.009202254800806829,0.017379591291678886 +local,b300k.cps2024.acs100.s2,national,real_estate_taxes_aggregate,1,0.1341307986253545,0.1341307986253545,0.10864498173634508 +local,b300k.cps2024.acs100.s2,national,rent_contract_annual_aggregate,1,0.12115040393212904,0.12115040393212904,0.12946497246197944 +local,b300k.cps2024.acs100.s2,national,rent_gross_annual_aggregate,1,0.22795283956190454,0.22795283956190454,0.23525697789508435 +local,b300k.cps2024.acs100.s2,national,renter,1,0.06089502019172249,0.06089502019172249,0.0360035549662605 +local,b300k.cps2024.acs100.s2,state,households,51,0.025100773638766456,0.015028006146782055,0.01901002835770843 +local,b300k.cps2024.acs100.s2,state,owner,51,0.03796910804481595,0.03227595640117272,0.020465468366677945 +local,b300k.cps2024.acs100.s2,state,persons_0_17,51,0.07385525471883074,0.07328213097842243,0.06185684002766886 +local,b300k.cps2024.acs100.s2,state,persons_18_64,51,0.04413858988862866,0.04263886823418591,0.03214162327583207 +local,b300k.cps2024.acs100.s2,state,persons_65p,51,0.012276367405546298,0.006076411437692115,0.037406340913297025 +local,b300k.cps2024.acs100.s2,state,persons_in_households,51,0.012474676686658512,0.008782331569204245,0.025402788785354857 +local,b300k.cps2024.acs100.s2,state,persons_male,51,0.028655384067299533,0.028251720350637402,0.03649148102859059 +local,b300k.cps2024.acs100.s2,state,persons_total,51,0.017315824185406267,0.012719663425555194,0.026426138315958702 +local,b300k.cps2024.acs100.s2,state,real_estate_taxes_aggregate,51,0.12941799903066367,0.13013707250996231,0.0804511919488555 +local,b300k.cps2024.acs100.s2,state,rent_contract_annual_aggregate,51,0.16071831641056197,0.1321890836624861,0.17336608078593066 +local,b300k.cps2024.acs100.s2,state,rent_gross_annual_aggregate,51,0.2126311229127064,0.1970382469560087,0.20851901486314603 +local,b300k.cps2024.acs100.s2,state,renter,51,0.09872782318636404,0.09095726693445913,0.0697055944503938 +local,b600k.cps0.acs100.s0,cd,households,436,0.04283598315525621,0.031731558787751496,0.029131914349442446 +local,b600k.cps0.acs100.s0,cd,owner,436,0.07105049102862779,0.053076641755306964,0.04051540121109158 +local,b600k.cps0.acs100.s0,cd,persons_0_17,436,0.09436113992978248,0.08411099416030471,0.08208722591935363 +local,b600k.cps0.acs100.s0,cd,persons_18_64,436,0.055655159641184775,0.048500208816629545,0.040825249109997776 +local,b600k.cps0.acs100.s0,cd,persons_65p,436,0.07653055413552765,0.06160273067759359,0.05276132280332941 +local,b600k.cps0.acs100.s0,cd,persons_male,436,0.03673497375847362,0.028206193135407225,0.046373344829246 +local,b600k.cps0.acs100.s0,cd,persons_total,436,0.019866263584922387,0.008138988941197548,0.03991902722308742 +local,b600k.cps0.acs100.s0,cd,real_estate_taxes_aggregate,436,0.14709966918534542,0.11630978053856403,0.11040149519824126 +local,b600k.cps0.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3278598371064132,0.26336654975546864,0.3172776952532818 +local,b600k.cps0.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2871942242444503,0.2529291203637214,0.2794535424362954 +local,b600k.cps0.acs100.s0,cd,renter,436,0.13830411895371494,0.1252159980533113,0.07627181026553721 +local,b600k.cps0.acs100.s0,county,households,850,0.10378256226045053,0.07380805411047356,0.06554917480320599 +local,b600k.cps0.acs100.s0,county,owner,850,0.12816810597846762,0.08886904101693438,0.08017899518063644 +local,b600k.cps0.acs100.s0,county,persons_0_17,850,0.20781729586058603,0.14734307680260056,0.15566370071385557 +local,b600k.cps0.acs100.s0,county,persons_18_64,850,0.1269209171479997,0.1000688229450015,0.08602364741400081 +local,b600k.cps0.acs100.s0,county,persons_65p,850,0.16578939924340957,0.12144504699715192,0.10686977334736653 +local,b600k.cps0.acs100.s0,county,persons_in_households,850,0.11168226415244333,0.07754419800294819,0.08255564542316682 +local,b600k.cps0.acs100.s0,county,persons_male,850,0.12203272645290039,0.08966182028453912,0.08761508069603569 +local,b600k.cps0.acs100.s0,county,persons_total,850,0.10888243171323858,0.0748151933330983,0.07963123059554887 +local,b600k.cps0.acs100.s0,county,real_estate_taxes_aggregate,850,0.21380625072278886,0.13849353092032557,0.16370180319595093 +local,b600k.cps0.acs100.s0,county,rent_contract_annual_aggregate,850,0.407066753581971,0.32391253827392774,0.3984796007607794 +local,b600k.cps0.acs100.s0,county,rent_gross_annual_aggregate,850,0.35741170590228794,0.3001752740096502,0.3316674139615876 +local,b600k.cps0.acs100.s0,county,renter,850,0.22526068909703892,0.18303501940483255,0.15085102425283922 +local,b600k.cps0.acs100.s0,national,households,1,0.006422591343137454,0.006422591343137454,5.938114703318635e-05 +local,b600k.cps0.acs100.s0,national,owner,1,0.043357836808508944,0.043357836808508944,0.0019768920071729147 +local,b600k.cps0.acs100.s0,national,persons_0_17,1,0.08024699953252984,0.08024699953252984,0.036576349200425594 +local,b600k.cps0.acs100.s0,national,persons_18_64,1,0.052549780660943624,0.052549780660943624,0.01945871613649533 +local,b600k.cps0.acs100.s0,national,persons_65p,1,0.013807160382450742,0.013807160382450742,0.01247044340014511 +local,b600k.cps0.acs100.s0,national,persons_in_households,1,0.009668300822164107,0.009668300822164107,0.01760172242520067 +local,b600k.cps0.acs100.s0,national,persons_male,1,0.02723740569087617,0.02723740569087617,0.02802336143491234 +local,b600k.cps0.acs100.s0,national,persons_total,1,0.012125249102794305,0.012125249102794305,0.01737959129143231 +local,b600k.cps0.acs100.s0,national,real_estate_taxes_aggregate,1,0.09675221116084491,0.09675221116084491,0.017499562552654998 +local,b600k.cps0.acs100.s0,national,rent_contract_annual_aggregate,1,0.13952009005184818,0.13952009005184818,0.13137360530288825 +local,b600k.cps0.acs100.s0,national,rent_gross_annual_aggregate,1,0.2440901445914821,0.2440901445914821,0.23693366361211204 +local,b600k.cps0.acs100.s0,national,renter,1,0.11071287212764896,0.11071287212764896,0.050253109583821384 +local,b600k.cps0.acs100.s0,state,households,51,0.022733643835094294,0.01731772592906667,0.012233601743234922 +local,b600k.cps0.acs100.s0,state,owner,51,0.04239174712903326,0.03680436039937813,0.014361305690807256 +local,b600k.cps0.acs100.s0,state,persons_0_17,51,0.07742208389501914,0.07226036840745625,0.04112786132694817 +local,b600k.cps0.acs100.s0,state,persons_18_64,51,0.05396762550269301,0.049616542386352595,0.02441474410562478 +local,b600k.cps0.acs100.s0,state,persons_65p,51,0.01908811155348217,0.00910710267362902,0.027109918630514686 +local,b600k.cps0.acs100.s0,state,persons_in_households,51,0.01574936391453503,0.012328906957608764,0.020857298561184786 +local,b600k.cps0.acs100.s0,state,persons_male,51,0.03044955670182639,0.02876965845575111,0.02713622544399762 +local,b600k.cps0.acs100.s0,state,persons_total,51,0.019144486350313225,0.01442771911713793,0.02027053840681421 +local,b600k.cps0.acs100.s0,state,real_estate_taxes_aggregate,51,0.07991842399942357,0.07970300949492891,0.03325181722010736 +local,b600k.cps0.acs100.s0,state,rent_contract_annual_aggregate,51,0.19861949772748802,0.16524877561722454,0.19724700364051598 +local,b600k.cps0.acs100.s0,state,rent_gross_annual_aggregate,51,0.22694557516088912,0.192857271619551,0.21690873070493952 +local,b600k.cps0.acs100.s0,state,renter,51,0.1255753940373777,0.1299412535910635,0.05752235131944817 +local,b600k.cps2022-2023-2024.acs000.s0,cd,households,436,0.06986150057149461,0.051856060705313484,0.04801722281360067 +local,b600k.cps2022-2023-2024.acs000.s0,cd,owner,436,0.125902352895834,0.07437713082005368,0.13969944664351838 +local,b600k.cps2022-2023-2024.acs000.s0,cd,persons_0_17,436,0.08867188977262523,0.06555745344884656,0.11894334403780951 +local,b600k.cps2022-2023-2024.acs000.s0,cd,persons_18_64,436,0.04665650198438637,0.03652070001380932,0.05613206137225359 +local,b600k.cps2022-2023-2024.acs000.s0,cd,persons_65p,436,0.09587905390777221,0.07295307586818728,0.128341874121303 +local,b600k.cps2022-2023-2024.acs000.s0,cd,persons_male,436,0.04267172786424647,0.03646617810293392,0.05638393934796342 +local,b600k.cps2022-2023-2024.acs000.s0,cd,persons_total,436,0.026523116913908504,0.020488073869718536,0.0464902838324475 +local,b600k.cps2022-2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.5162524531767372,0.5504785248251383,0.5765731026475934 +local,b600k.cps2022-2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.31748876685482225,0.2689766480804896,0.31623224000001665 +local,b600k.cps2022-2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.2961726022448764,0.25804976222821735,0.2882616247944339 +local,b600k.cps2022-2023-2024.acs000.s0,cd,renter,436,0.25051340808580536,0.1909364691017087,0.22575486338826894 +local,b600k.cps2022-2023-2024.acs000.s0,county,households,850,0.09393190018523796,0.06708055413927932,0.07079583003375713 +local,b600k.cps2022-2023-2024.acs000.s0,county,owner,850,0.14306228539142163,0.10306888168019016,0.13838716902434267 +local,b600k.cps2022-2023-2024.acs000.s0,county,persons_0_17,850,0.17408295082683112,0.12494339148047821,0.16096348049085904 +local,b600k.cps2022-2023-2024.acs000.s0,county,persons_18_64,850,0.10213373217081423,0.07125631092343737,0.09531176868706699 +local,b600k.cps2022-2023-2024.acs000.s0,county,persons_65p,850,0.1724850189481204,0.12688328909404897,0.16230870184838916 +local,b600k.cps2022-2023-2024.acs000.s0,county,persons_in_households,850,0.08114135449564329,0.05444366400069514,0.07866774822280603 +local,b600k.cps2022-2023-2024.acs000.s0,county,persons_male,850,0.088315557126945,0.06305309896143829,0.08335934248251217 +local,b600k.cps2022-2023-2024.acs000.s0,county,persons_total,850,0.077432563317541,0.05090036840446606,0.0736315251376632 +local,b600k.cps2022-2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5286906152213942,0.5575914070152916,0.5552760703819513 +local,b600k.cps2022-2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.39999575008495386,0.31692818374355175,0.40070703161679877 +local,b600k.cps2022-2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.34944522750380314,0.29452341044371133,0.3405721258724111 +local,b600k.cps2022-2023-2024.acs000.s0,county,renter,850,0.33379978151507644,0.25204098191358004,0.3028016551040578 +local,b600k.cps2022-2023-2024.acs000.s0,national,households,1,0.04038778065147569,0.04038778065147569,0.04038778011268734 +local,b600k.cps2022-2023-2024.acs000.s0,national,owner,1,0.03309061569468434,0.03309061569468434,0.04504294266356592 +local,b600k.cps2022-2023-2024.acs000.s0,national,persons_0_17,1,0.05092190452383326,0.05092190452383326,0.02109426309349261 +local,b600k.cps2022-2023-2024.acs000.s0,national,persons_18_64,1,0.023343436400840283,0.023343436400840283,0.026748636552436502 +local,b600k.cps2022-2023-2024.acs000.s0,national,persons_65p,1,0.03021178674860203,0.03021178674860203,0.018547026346196087 +local,b600k.cps2022-2023-2024.acs000.s0,national,persons_in_households,1,0.016413324569034066,0.016413324569034066,0.00746880760395044 +local,b600k.cps2022-2023-2024.acs000.s0,national,persons_male,1,0.02329094506558218,0.02329094506558218,0.030890456469041976 +local,b600k.cps2022-2023-2024.acs000.s0,national,persons_total,1,0.00865568356375265,0.00865568356375265,0.01737959129131314 +local,b600k.cps2022-2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5769375126367852,0.5769375126367852,0.6659411721508722 +local,b600k.cps2022-2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.1335071676256076,0.1335071676256076,0.13110826309034238 +local,b600k.cps2022-2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.23880794419464071,0.23880794419464071,0.23670056718394392 +local,b600k.cps2022-2023-2024.acs000.s0,national,renter,1,0.020331348722926718,0.020331348722926718,0.0022442128363200317 +local,b600k.cps2022-2023-2024.acs000.s0,state,households,51,0.04112096348712272,0.02599655107859757,0.038818772971578756 +local,b600k.cps2022-2023-2024.acs000.s0,state,owner,51,0.038722897942976654,0.03430984141963821,0.04937364843674589 +local,b600k.cps2022-2023-2024.acs000.s0,state,persons_0_17,51,0.05796338737023173,0.054194255332552996,0.051251297935895425 +local,b600k.cps2022-2023-2024.acs000.s0,state,persons_18_64,51,0.027831449401020527,0.02494105351571082,0.029082605581341018 +local,b600k.cps2022-2023-2024.acs000.s0,state,persons_65p,51,0.0260334373235759,0.012599399084434222,0.033742093722682706 +local,b600k.cps2022-2023-2024.acs000.s0,state,persons_in_households,51,0.019623180790037522,0.018190484800399098,0.020461498374015723 +local,b600k.cps2022-2023-2024.acs000.s0,state,persons_male,51,0.026273321423532222,0.022362405705899206,0.030540574782716375 +local,b600k.cps2022-2023-2024.acs000.s0,state,persons_total,51,0.01453357225437533,0.013987016572997958,0.01771959021526217 +local,b600k.cps2022-2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4689637900258441,0.4507537842003275,0.5512094530501028 +local,b600k.cps2022-2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.14963860693379205,0.14386666188483221,0.1468564716660872 +local,b600k.cps2022-2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2377350974741274,0.22660699697607184,0.2319063763479941 +local,b600k.cps2022-2023-2024.acs000.s0,state,renter,51,0.08757859570746938,0.07585961189107311,0.058740079396225546 +local,b600k.cps2022-2023-2024.acs050.s0,cd,households,436,0.06329653983850206,0.046568472928454174,0.04076660944068676 +local,b600k.cps2022-2023-2024.acs050.s0,cd,owner,436,0.10780772305619193,0.06403329313977504,0.10309806957703438 +local,b600k.cps2022-2023-2024.acs050.s0,cd,persons_0_17,436,0.08419664905072079,0.05922425969373292,0.09416791053042188 +local,b600k.cps2022-2023-2024.acs050.s0,cd,persons_18_64,436,0.04398820792390024,0.03798950061980745,0.045930432415639405 +local,b600k.cps2022-2023-2024.acs050.s0,cd,persons_65p,436,0.08288344989001785,0.06590310714501901,0.09371557363276464 +local,b600k.cps2022-2023-2024.acs050.s0,cd,persons_male,436,0.035113417111247484,0.02753710401811322,0.04798835098337538 +local,b600k.cps2022-2023-2024.acs050.s0,cd,persons_total,436,0.020513082373792766,0.016121457797198945,0.03878063239127864 +local,b600k.cps2022-2023-2024.acs050.s0,cd,real_estate_taxes_aggregate,436,0.36238853378353914,0.37770553089137354,0.36210372447109174 +local,b600k.cps2022-2023-2024.acs050.s0,cd,rent_contract_annual_aggregate,436,0.32002145069313326,0.26549458100372103,0.31345895784069233 +local,b600k.cps2022-2023-2024.acs050.s0,cd,rent_gross_annual_aggregate,436,0.28057299399991564,0.25300050878437996,0.27504990828074793 +local,b600k.cps2022-2023-2024.acs050.s0,cd,renter,436,0.19236714951714695,0.14845765859436233,0.15967464680644824 +local,b600k.cps2022-2023-2024.acs050.s0,county,households,850,0.09518027816770123,0.0680120125926823,0.07282913072759298 +local,b600k.cps2022-2023-2024.acs050.s0,county,owner,850,0.13305435690941553,0.09950716351716594,0.11646523216809596 +local,b600k.cps2022-2023-2024.acs050.s0,county,persons_0_17,850,0.17742279717039333,0.12072422836820287,0.14915435274988675 +local,b600k.cps2022-2023-2024.acs050.s0,county,persons_18_64,850,0.11036787657552151,0.08275256249341607,0.0885193849220127 +local,b600k.cps2022-2023-2024.acs050.s0,county,persons_65p,850,0.16173271697759245,0.11983327472355981,0.13962343544320704 +local,b600k.cps2022-2023-2024.acs050.s0,county,persons_in_households,850,0.09129796378119356,0.06422811716508983,0.07782725672079106 +local,b600k.cps2022-2023-2024.acs050.s0,county,persons_male,850,0.09796570410375709,0.0684033613933624,0.08404599951802504 +local,b600k.cps2022-2023-2024.acs050.s0,county,persons_total,850,0.08865003957888735,0.06402374878390721,0.07530376871577389 +local,b600k.cps2022-2023-2024.acs050.s0,county,real_estate_taxes_aggregate,850,0.3956470898734026,0.4010885580645871,0.35876215059500544 +local,b600k.cps2022-2023-2024.acs050.s0,county,rent_contract_annual_aggregate,850,0.40748209283832254,0.30741262665235664,0.3952793971545376 +local,b600k.cps2022-2023-2024.acs050.s0,county,rent_gross_annual_aggregate,850,0.3501312797877488,0.2955638381167027,0.3307980790519032 +local,b600k.cps2022-2023-2024.acs050.s0,county,renter,850,0.2693164819134235,0.20934674978801715,0.22587235478886497 +local,b600k.cps2022-2023-2024.acs050.s0,national,households,1,0.03346224569099015,0.03346224569099015,0.02654951890742389 +local,b600k.cps2022-2023-2024.acs050.s0,national,owner,1,0.04277961402308975,0.04277961402308975,0.030642047718378935 +local,b600k.cps2022-2023-2024.acs050.s0,national,persons_0_17,1,0.05961394393076167,0.05961394393076167,0.02843698537315832 +local,b600k.cps2022-2023-2024.acs050.s0,national,persons_18_64,1,0.031604205429160794,0.031604205429160794,0.02401883189545691 +local,b600k.cps2022-2023-2024.acs050.s0,national,persons_65p,1,0.020914131384621077,0.020914131384621077,0.01811162226616691 +local,b600k.cps2022-2023-2024.acs050.s0,national,persons_in_households,1,0.008812037084036835,0.008812037084036835,0.0013977685137549069 +local,b600k.cps2022-2023-2024.acs050.s0,national,persons_male,1,0.022636835451741572,0.022636835451741572,0.02998682446234174 +local,b600k.cps2022-2023-2024.acs050.s0,national,persons_total,1,0.010119473386582149,0.010119473386582149,0.017379591291606683 +local,b600k.cps2022-2023-2024.acs050.s0,national,real_estate_taxes_aggregate,1,0.39187156464350564,0.39187156464350564,0.42226202267962937 +local,b600k.cps2022-2023-2024.acs050.s0,national,rent_contract_annual_aggregate,1,0.118027531378056,0.118027531378056,0.1294539567926372 +local,b600k.cps2022-2023-2024.acs050.s0,national,rent_gross_annual_aggregate,1,0.22520947494232751,0.22520947494232751,0.23524730090794793 +local,b600k.cps2022-2023-2024.acs050.s0,national,renter,1,0.02300281722600223,0.02300281722600223,0.019179098677224803 +local,b600k.cps2022-2023-2024.acs050.s0,state,households,51,0.03457562717924209,0.021635942166484658,0.029996373805502928 +local,b600k.cps2022-2023-2024.acs050.s0,state,owner,51,0.04090401034467487,0.038259690215607225,0.03478868669108088 +local,b600k.cps2022-2023-2024.acs050.s0,state,persons_0_17,51,0.060044480274040996,0.053934439010063076,0.04757777527998962 +local,b600k.cps2022-2023-2024.acs050.s0,state,persons_18_64,51,0.03409772562587803,0.030544981251818544,0.027509490333724632 +local,b600k.cps2022-2023-2024.acs050.s0,state,persons_65p,51,0.020130895911566627,0.009041969009142484,0.02919642305626463 +local,b600k.cps2022-2023-2024.acs050.s0,state,persons_in_households,51,0.01294776714003517,0.008868890248086025,0.01794596655497512 +local,b600k.cps2022-2023-2024.acs050.s0,state,persons_male,51,0.024565841861093264,0.019919788203849455,0.030145794013306495 +local,b600k.cps2022-2023-2024.acs050.s0,state,persons_total,51,0.015525668489994789,0.01318532022382571,0.018901079284208228 +local,b600k.cps2022-2023-2024.acs050.s0,state,real_estate_taxes_aggregate,51,0.3606063763978691,0.3649455630141956,0.350556825426126 +local,b600k.cps2022-2023-2024.acs050.s0,state,rent_contract_annual_aggregate,51,0.13987419847758958,0.11054424056921952,0.15280228479458702 +local,b600k.cps2022-2023-2024.acs050.s0,state,rent_gross_annual_aggregate,51,0.21071866478313125,0.21720683846163796,0.21406906286509106 +local,b600k.cps2022-2023-2024.acs050.s0,state,renter,51,0.0884159972270845,0.07943818476676681,0.05134947943147949 +local,b600k.cps2022-2023-2024.acs100.s0,cd,households,436,0.055547320023101,0.04106756449377638,0.03506520730176734 +local,b600k.cps2022-2023-2024.acs100.s0,cd,owner,436,0.09036917635309506,0.05675898758064961,0.06384594718594004 +local,b600k.cps2022-2023-2024.acs100.s0,cd,persons_0_17,436,0.08467210495880087,0.06653006003789709,0.07749915796910463 +local,b600k.cps2022-2023-2024.acs100.s0,cd,persons_18_64,436,0.04510605187882289,0.04046159670427159,0.0393318807368864 +local,b600k.cps2022-2023-2024.acs100.s0,cd,persons_65p,436,0.07613502367669127,0.0580402245689551,0.06486340081137254 +local,b600k.cps2022-2023-2024.acs100.s0,cd,persons_male,436,0.03269614997622842,0.02636580761775399,0.0443238019796366 +local,b600k.cps2022-2023-2024.acs100.s0,cd,persons_total,436,0.01627176371789309,0.011356731190521413,0.03631302649441157 +local,b600k.cps2022-2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.20810740147035095,0.20774943506553503,0.1659213056597975 +local,b600k.cps2022-2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3221537471480247,0.2747769059401564,0.31245072840633165 +local,b600k.cps2022-2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2796923745829313,0.24479254814625961,0.2731156193254158 +local,b600k.cps2022-2023-2024.acs100.s0,cd,renter,436,0.1535408074446866,0.1203649537725098,0.10015830093827033 +local,b600k.cps2022-2023-2024.acs100.s0,county,households,850,0.10101557670559981,0.07249464087163004,0.07022295455240964 +local,b600k.cps2022-2023-2024.acs100.s0,county,owner,850,0.13137673997094465,0.09609988917039677,0.09120412403910466 +local,b600k.cps2022-2023-2024.acs100.s0,county,persons_0_17,850,0.1871400938061126,0.13072997643504375,0.14930389281148404 +local,b600k.cps2022-2023-2024.acs100.s0,county,persons_18_64,850,0.11489929381971524,0.08386885278808653,0.08464531723176698 +local,b600k.cps2022-2023-2024.acs100.s0,county,persons_65p,850,0.15633835581674463,0.11082357090282924,0.11514056128954414 +local,b600k.cps2022-2023-2024.acs100.s0,county,persons_in_households,850,0.09868039697001332,0.06555973685925431,0.07930916467963997 +local,b600k.cps2022-2023-2024.acs100.s0,county,persons_male,850,0.10693662405891359,0.07691971338277356,0.08247131400907916 +local,b600k.cps2022-2023-2024.acs100.s0,county,persons_total,850,0.09646060978521388,0.06325845449492463,0.07734309998358456 +local,b600k.cps2022-2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.2678292958115343,0.24380175755800154,0.19722729789148571 +local,b600k.cps2022-2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.41214851232429683,0.322863314182977,0.39346589899240614 +local,b600k.cps2022-2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3572183647108037,0.30687382209606445,0.3286331922752514 +local,b600k.cps2022-2023-2024.acs100.s0,county,renter,850,0.23037085849929018,0.17934792962031626,0.16162469496419019 +local,b600k.cps2022-2023-2024.acs100.s0,national,households,1,0.026256912663399166,0.026256912663399166,0.011916986562554879 +local,b600k.cps2022-2023-2024.acs100.s0,national,owner,1,0.05049734566513279,0.05049734566513279,0.014413246770240463 +local,b600k.cps2022-2023-2024.acs100.s0,national,persons_0_17,1,0.06780692702141795,0.06780692702141795,0.03192184197385389 +local,b600k.cps2022-2023-2024.acs100.s0,national,persons_18_64,1,0.03861991881003687,0.03861991881003687,0.021832260889236167 +local,b600k.cps2022-2023-2024.acs100.s0,national,persons_65p,1,0.006366670114642772,0.006366670114642772,0.014908986136342239 +local,b600k.cps2022-2023-2024.acs100.s0,national,persons_in_households,1,0.0029427711227806206,0.0029427711227806206,0.010370673031291317 +local,b600k.cps2022-2023-2024.acs100.s0,national,persons_male,1,0.024003078337584246,0.024003078337584246,0.028618045204852963 +local,b600k.cps2022-2023-2024.acs100.s0,national,persons_total,1,0.009991040958027341,0.009991040958027341,0.017379591291674157 +local,b600k.cps2022-2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.2137812430508628,0.2137812430508628,0.17769908558937333 +local,b600k.cps2022-2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.12281267541267184,0.12281267541267184,0.1296810222713484 +local,b600k.cps2022-2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.22941310304973253,0.22941310304973253,0.23544677219274665 +local,b600k.cps2022-2023-2024.acs100.s0,national,renter,1,0.06416503608726166,0.06416503608726166,0.03589758252028333 +local,b600k.cps2022-2023-2024.acs100.s0,state,households,51,0.029862275409777296,0.0226987183140945,0.0169975748768794 +local,b600k.cps2022-2023-2024.acs100.s0,state,owner,51,0.0435227923987912,0.040730674576925724,0.019295694410602426 +local,b600k.cps2022-2023-2024.acs100.s0,state,persons_0_17,51,0.0666068089758976,0.06155131583919419,0.04707282476037992 +local,b600k.cps2022-2023-2024.acs100.s0,state,persons_18_64,51,0.04005537351594874,0.03696980130384427,0.023794807114982382 +local,b600k.cps2022-2023-2024.acs100.s0,state,persons_65p,51,0.010931974818271071,0.006256386388282518,0.02611831638512562 +local,b600k.cps2022-2023-2024.acs100.s0,state,persons_in_households,51,0.009510241400457921,0.004259039248474283,0.0173595699878346 +local,b600k.cps2022-2023-2024.acs100.s0,state,persons_male,51,0.023851950573478217,0.020408125711716064,0.02845235826373236 +local,b600k.cps2022-2023-2024.acs100.s0,state,persons_total,51,0.015180944631579018,0.011979553620894487,0.018551922555122165 +local,b600k.cps2022-2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.21109831789190578,0.20861127862534765,0.14846945183719518 +local,b600k.cps2022-2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.16341222551285803,0.11994060301269956,0.17508609473163061 +local,b600k.cps2022-2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.21169179694702486,0.19171108789603564,0.20840159791979437 +local,b600k.cps2022-2023-2024.acs100.s0,state,renter,51,0.09731635318044043,0.0943497889311714,0.049236075039910135 +local,b600k.cps2023-2024.acs000.s0,cd,households,436,0.07011996505914017,0.053783151487293235,0.04757020470526813 +local,b600k.cps2023-2024.acs000.s0,cd,owner,436,0.12542314062706622,0.07673967250679505,0.1419669757238363 +local,b600k.cps2023-2024.acs000.s0,cd,persons_0_17,436,0.08901404834361157,0.06466898737929005,0.12400367196258869 +local,b600k.cps2023-2024.acs000.s0,cd,persons_18_64,436,0.04752138286498946,0.039995874669340604,0.05876189764179027 +local,b600k.cps2023-2024.acs000.s0,cd,persons_65p,436,0.09714553731908339,0.0818158676433356,0.13165846430457087 +local,b600k.cps2023-2024.acs000.s0,cd,persons_male,436,0.04452373150019259,0.03605226855864009,0.06047215373767997 +local,b600k.cps2023-2024.acs000.s0,cd,persons_total,436,0.026443908764703976,0.019869350751594052,0.05023260618751336 +local,b600k.cps2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.5167515852507631,0.5593959355242026,0.5676811076228979 +local,b600k.cps2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3189956444266703,0.27158098335476666,0.3153573695476941 +local,b600k.cps2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.2920289111874504,0.26745396636236485,0.2843506848649899 +local,b600k.cps2023-2024.acs000.s0,cd,renter,436,0.2551015647398671,0.2111861629909423,0.22450938418467437 +local,b600k.cps2023-2024.acs000.s0,county,households,850,0.0930720268049594,0.062467564908482605,0.07000860107884044 +local,b600k.cps2023-2024.acs000.s0,county,owner,850,0.14698631243997987,0.10743176483846906,0.143311577796287 +local,b600k.cps2023-2024.acs000.s0,county,persons_0_17,850,0.17241305762303802,0.12282368901035791,0.1628470211171628 +local,b600k.cps2023-2024.acs000.s0,county,persons_18_64,850,0.10237957128599029,0.07169281515357272,0.09830799978136316 +local,b600k.cps2023-2024.acs000.s0,county,persons_65p,850,0.17623430353788702,0.1306627610509663,0.1647273008511208 +local,b600k.cps2023-2024.acs000.s0,county,persons_in_households,850,0.08258895963241955,0.05643208730925613,0.0806695740889332 +local,b600k.cps2023-2024.acs000.s0,county,persons_male,850,0.09018356274055762,0.06611713568818174,0.08569271421999052 +local,b600k.cps2023-2024.acs000.s0,county,persons_total,850,0.07873027002826892,0.05378296245039157,0.07497035879383328 +local,b600k.cps2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5201564265483738,0.5541731291944676,0.5480828336968154 +local,b600k.cps2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.4048779772373883,0.33010595404078413,0.39961295150573706 +local,b600k.cps2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.3450019383102263,0.2964932740217967,0.3377649518117794 +local,b600k.cps2023-2024.acs000.s0,county,renter,850,0.3334909975545844,0.256560012718306,0.3030451079437595 +local,b600k.cps2023-2024.acs000.s0,national,households,1,0.04063176137588887,0.04063176137588887,0.04063176077450957 +local,b600k.cps2023-2024.acs000.s0,national,owner,1,0.02528173134009962,0.02528173134009962,0.04234516572802962 +local,b600k.cps2023-2024.acs000.s0,national,persons_0_17,1,0.05177674746115352,0.05177674746115352,0.027390231881040526 +local,b600k.cps2023-2024.acs000.s0,national,persons_18_64,1,0.024912436206717563,0.024912436206717563,0.02680501507024841 +local,b600k.cps2023-2024.acs000.s0,national,persons_65p,1,0.02509792766283101,0.02509792766283101,0.026233676447590164 +local,b600k.cps2023-2024.acs000.s0,national,persons_in_households,1,0.016571374450058005,0.016571374450058005,0.007468807603687385 +local,b600k.cps2023-2024.acs000.s0,national,persons_male,1,0.024452909294381067,0.024452909294381067,0.030408793665966896 +local,b600k.cps2023-2024.acs000.s0,national,persons_total,1,0.008501531854522605,0.008501531854522605,0.017379591291569706 +local,b600k.cps2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.57762932464208,0.57762932464208,0.6562268648260858 +local,b600k.cps2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.12352193817258843,0.12352193817258843,0.12227496863436776 +local,b600k.cps2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.23003617246029842,0.23003617246029842,0.22894074123356356 +local,b600k.cps2023-2024.acs000.s0,national,renter,1,0.03331421164382839,0.03331421164382839,0.0025205865936245436 +local,b600k.cps2023-2024.acs000.s0,state,households,51,0.04204723286192365,0.027891217250972305,0.04016948176038709 +local,b600k.cps2023-2024.acs000.s0,state,owner,51,0.03445202932135316,0.023948343088771754,0.047575326212758874 +local,b600k.cps2023-2024.acs000.s0,state,persons_0_17,51,0.05921316789103704,0.04853369266345101,0.05483953711216379 +local,b600k.cps2023-2024.acs000.s0,state,persons_18_64,51,0.02955175870186121,0.026857103648531246,0.030737259274090257 +local,b600k.cps2023-2024.acs000.s0,state,persons_65p,51,0.022996068430338485,0.009673951009198017,0.03958899754100455 +local,b600k.cps2023-2024.acs000.s0,state,persons_in_households,51,0.01992604499301162,0.018072662960564714,0.019558544514582006 +local,b600k.cps2023-2024.acs000.s0,state,persons_male,51,0.029295673326408787,0.025851816679351877,0.031232583282334508 +local,b600k.cps2023-2024.acs000.s0,state,persons_total,51,0.014578525804312221,0.013653679655175444,0.018964847449262308 +local,b600k.cps2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4693592216257568,0.4663987833207823,0.541622701942078 +local,b600k.cps2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.14569300467042268,0.1315081858642453,0.1416029247645714 +local,b600k.cps2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2285781129670461,0.22585702277922173,0.21996850492417253 +local,b600k.cps2023-2024.acs000.s0,state,renter,51,0.08779063825268991,0.08010337854496208,0.06435477021533302 +local,b600k.cps2023-2024.acs100.s0,cd,households,436,0.051720346407848165,0.039563447848038114,0.03201891814786413 +local,b600k.cps2023-2024.acs100.s0,cd,owner,436,0.08043947633140777,0.05491388959800669,0.05429203104563203 +local,b600k.cps2023-2024.acs100.s0,cd,persons_0_17,436,0.08785111784226801,0.0716390911910455,0.07857924097754165 +local,b600k.cps2023-2024.acs100.s0,cd,persons_18_64,436,0.04738258497330894,0.038854378970561876,0.04069222534409441 +local,b600k.cps2023-2024.acs100.s0,cd,persons_65p,436,0.07328656305475142,0.05732332738273331,0.05900141255712118 +local,b600k.cps2023-2024.acs100.s0,cd,persons_male,436,0.032617899007524105,0.026704040028513835,0.045321618142586624 +local,b600k.cps2023-2024.acs100.s0,cd,persons_total,436,0.01541211101048625,0.009540765040016618,0.03817866115212427 +local,b600k.cps2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.15044019614294882,0.14049665400143205,0.1283149673485505 +local,b600k.cps2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3233243039031593,0.26233500639670004,0.31389979158479325 +local,b600k.cps2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2772592176856028,0.23980965116244718,0.27326254525660193 +local,b600k.cps2023-2024.acs100.s0,cd,renter,436,0.14200054637280407,0.11840750428643537,0.08687767837826281 +local,b600k.cps2023-2024.acs100.s0,county,households,850,0.10058108528083204,0.07293873305797768,0.06786876691051111 +local,b600k.cps2023-2024.acs100.s0,county,owner,850,0.12690365250699623,0.09083886102461666,0.08533779859957384 +local,b600k.cps2023-2024.acs100.s0,county,persons_0_17,850,0.19354936288107857,0.14000899366386108,0.15092560849272915 +local,b600k.cps2023-2024.acs100.s0,county,persons_18_64,850,0.11726635850042497,0.08500997993657661,0.08535920677713327 +local,b600k.cps2023-2024.acs100.s0,county,persons_65p,850,0.15242008491407255,0.1083336299095451,0.11181692901151243 +local,b600k.cps2023-2024.acs100.s0,county,persons_in_households,850,0.10058897231620476,0.07003217444527395,0.07974345026069395 +local,b600k.cps2023-2024.acs100.s0,county,persons_male,850,0.10762388426024239,0.0808333122769244,0.0848549067859619 +local,b600k.cps2023-2024.acs100.s0,county,persons_total,850,0.09815909306743173,0.06780365642011268,0.07768986651702461 +local,b600k.cps2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.22829485781014247,0.1975291754274667,0.17081468563330832 +local,b600k.cps2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.41327147832933586,0.338711401488017,0.3921769114729371 +local,b600k.cps2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.35812608782529787,0.30803039253765085,0.32672405393682935 +local,b600k.cps2023-2024.acs100.s0,county,renter,850,0.21839647315018162,0.16976417317981063,0.15205682831065692 +local,b600k.cps2023-2024.acs100.s0,national,households,1,0.02175483236876062,0.02175483236876062,0.007898100092096693 +local,b600k.cps2023-2024.acs100.s0,national,owner,1,0.044596132815276364,0.044596132815276364,0.009375892152526346 +local,b600k.cps2023-2024.acs100.s0,national,persons_0_17,1,0.07308313805107025,0.07308313805107025,0.03465086915036744 +local,b600k.cps2023-2024.acs100.s0,national,persons_18_64,1,0.04179063555257215,0.04179063555257215,0.021099151615868166 +local,b600k.cps2023-2024.acs100.s0,national,persons_65p,1,0.001713554994911737,0.001713554994911737,0.01569357216696269 +local,b600k.cps2023-2024.acs100.s0,national,persons_in_households,1,0.0003833277244357812,0.0003833277244357812,0.012787431015813356 +local,b600k.cps2023-2024.acs100.s0,national,persons_male,1,0.02509134506256006,0.02509134506256006,0.028925993511865398 +local,b600k.cps2023-2024.acs100.s0,national,persons_total,1,0.009941628214364655,0.009941628214364655,0.01737959129168467 +local,b600k.cps2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.13651549207437016,0.13651549207437016,0.11048028880911435 +local,b600k.cps2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.12245273715892654,0.12245273715892654,0.1281570822615306 +local,b600k.cps2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.22909690638993951,0.22909690638993951,0.23410802940612888 +local,b600k.cps2023-2024.acs100.s0,national,renter,1,0.06825472444363605,0.06825472444363605,0.039266486957245474 +local,b600k.cps2023-2024.acs100.s0,state,households,51,0.027618888221235597,0.020825909866345575,0.014483036257314095 +local,b600k.cps2023-2024.acs100.s0,state,owner,51,0.04028339717032344,0.035985404856207055,0.016025862707060336 +local,b600k.cps2023-2024.acs100.s0,state,persons_0_17,51,0.06994337144014993,0.06196146192421074,0.041562306128017895 +local,b600k.cps2023-2024.acs100.s0,state,persons_18_64,51,0.043364990055289473,0.03758035436090752,0.023431882857797973 +local,b600k.cps2023-2024.acs100.s0,state,persons_65p,51,0.010152185763692298,0.0055810815884605085,0.0283621353351104 +local,b600k.cps2023-2024.acs100.s0,state,persons_in_households,51,0.009817082945746434,0.00487832211664343,0.017972250831526402 +local,b600k.cps2023-2024.acs100.s0,state,persons_male,51,0.027653614799856025,0.023811199888998383,0.02784736053088848 +local,b600k.cps2023-2024.acs100.s0,state,persons_total,51,0.01593890399355602,0.012079911855745789,0.01888189852316395 +local,b600k.cps2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.1426368546554541,0.13883226736658516,0.09512214865337698 +local,b600k.cps2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.1705399904259491,0.13076503441815215,0.18348344571762085 +local,b600k.cps2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.2117669607250461,0.20003334404320594,0.21014181331630405 +local,b600k.cps2023-2024.acs100.s0,state,renter,51,0.09763444955652427,0.1008291519284661,0.04939571988322804 +local,b600k.cps2024.acs000.s0,cd,households,436,0.07101683468910915,0.05492096404610681,0.04860373422342944 +local,b600k.cps2024.acs000.s0,cd,owner,436,0.12350313053924501,0.07320348080813363,0.14086797245473626 +local,b600k.cps2024.acs000.s0,cd,persons_0_17,436,0.09384706855143109,0.0679998901367497,0.1287218736419662 +local,b600k.cps2024.acs000.s0,cd,persons_18_64,436,0.04824765441692262,0.04001012131280943,0.06368655569089146 +local,b600k.cps2024.acs000.s0,cd,persons_65p,436,0.08987463713472517,0.06852105795066257,0.13475217085653052 +local,b600k.cps2024.acs000.s0,cd,persons_male,436,0.048205546051955955,0.03952534513886438,0.06347128608512126 +local,b600k.cps2024.acs000.s0,cd,persons_total,436,0.026784926728010014,0.020085763171557247,0.053441021977624 +local,b600k.cps2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.5141233087889496,0.5563091894764101,0.5512385370971004 +local,b600k.cps2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3267187139843856,0.27793667269950006,0.32027836579887575 +local,b600k.cps2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.2918632511306088,0.2588791148140167,0.28394427611551737 +local,b600k.cps2024.acs000.s0,cd,renter,436,0.2636297680104132,0.2092766078622619,0.2296633622834789 +local,b600k.cps2024.acs000.s0,county,households,850,0.09353289779421271,0.06453045229280577,0.07032960345071332 +local,b600k.cps2024.acs000.s0,county,owner,850,0.1456058626159746,0.10513286462783322,0.14217725774268836 +local,b600k.cps2024.acs000.s0,county,persons_0_17,850,0.17059362940533737,0.1180238473590544,0.1679169791612588 +local,b600k.cps2024.acs000.s0,county,persons_18_64,850,0.10420872697323377,0.07160230505652204,0.101923904001775 +local,b600k.cps2024.acs000.s0,county,persons_65p,850,0.16793095369318076,0.12556462051081807,0.16532852292906403 +local,b600k.cps2024.acs000.s0,county,persons_in_households,850,0.08625154452366118,0.05760849223509885,0.08620704438537921 +local,b600k.cps2024.acs000.s0,county,persons_male,850,0.0962580615070451,0.06595458893685094,0.08967680931621032 +local,b600k.cps2024.acs000.s0,county,persons_total,850,0.08272117679852185,0.055007075583373734,0.07962418337759103 +local,b600k.cps2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5207489426790778,0.5535797101619722,0.5307062105782046 +local,b600k.cps2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.408274776293562,0.3336581903453002,0.40670800802871676 +local,b600k.cps2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.34486805252212527,0.29569782703896996,0.33684740200907715 +local,b600k.cps2024.acs000.s0,county,renter,850,0.3356599384165806,0.2481263267442784,0.30476853363678535 +local,b600k.cps2024.acs000.s0,national,households,1,0.042503266822223204,0.042503266822223204,0.042503266231344095 +local,b600k.cps2024.acs000.s0,national,owner,1,0.017766487632581013,0.017766487632581013,0.04010859549479916 +local,b600k.cps2024.acs000.s0,national,persons_0_17,1,0.05743120464399337,0.05743120464399337,0.03288093308216741 +local,b600k.cps2024.acs000.s0,national,persons_18_64,1,0.026622572089607364,0.026622572089607364,0.028643647199171115 +local,b600k.cps2024.acs000.s0,national,persons_65p,1,0.02481881489640197,0.02481881489640197,0.03895423703662267 +local,b600k.cps2024.acs000.s0,national,persons_in_households,1,0.016804372845702714,0.016804372845702714,0.007468807602916907 +local,b600k.cps2024.acs000.s0,national,persons_male,1,0.02882598026481602,0.02882598026481602,0.03015050978129372 +local,b600k.cps2024.acs000.s0,national,persons_total,1,0.008274280174838965,0.008274280174838965,0.01737959129232118 +local,b600k.cps2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5740593539857844,0.5740593539857844,0.6395411932654015 +local,b600k.cps2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.10515479394011774,0.10515479394011774,0.098869446080184 +local,b600k.cps2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.21390110041443175,0.21390110041443175,0.20837958115864685 +local,b600k.cps2024.acs000.s0,national,renter,1,0.05380383953114939,0.05380383953114939,0.012242781551081959 +local,b600k.cps2024.acs000.s0,state,households,51,0.04468651342811599,0.035192630703291525,0.0411318324001774 +local,b600k.cps2024.acs000.s0,state,owner,51,0.036111985731305224,0.029461252272424774,0.04737445437548185 +local,b600k.cps2024.acs000.s0,state,persons_0_17,51,0.06416483727000125,0.06502865147162053,0.05938231280038855 +local,b600k.cps2024.acs000.s0,state,persons_18_64,51,0.0317478287893274,0.02850081563333349,0.03622043144080088 +local,b600k.cps2024.acs000.s0,state,persons_65p,51,0.024840920171219385,0.010187637884290609,0.053288532654899204 +local,b600k.cps2024.acs000.s0,state,persons_in_households,51,0.0209906024661828,0.018900562498929557,0.01986143555982416 +local,b600k.cps2024.acs000.s0,state,persons_male,51,0.03320302577851159,0.030565099023747894,0.03069101486431198 +local,b600k.cps2024.acs000.s0,state,persons_total,51,0.015828165554551174,0.011707263789104081,0.018409030751611464 +local,b600k.cps2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.46959172415734196,0.4620702345215907,0.526001522155504 +local,b600k.cps2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.1277358365402559,0.1076841079047712,0.12759779821473993 +local,b600k.cps2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2082278531656918,0.21647805023827668,0.20252115687966885 +local,b600k.cps2024.acs000.s0,state,renter,51,0.08718835882870808,0.07864588736876549,0.07151289876278472 +local,b600k.cps2024.acs050.s0,cd,households,436,0.06021883787644275,0.042976061285940434,0.0378119201009434 +local,b600k.cps2024.acs050.s0,cd,owner,436,0.0970491640462925,0.06076528360939331,0.08940336052967823 +local,b600k.cps2024.acs050.s0,cd,persons_0_17,436,0.08371364341152365,0.057744343993788444,0.09558272273817567 +local,b600k.cps2024.acs050.s0,cd,persons_18_64,436,0.04511810786497216,0.03798891795659751,0.0492840182173179 +local,b600k.cps2024.acs050.s0,cd,persons_65p,436,0.07722630655776277,0.05775498589666836,0.08642160122209239 +local,b600k.cps2024.acs050.s0,cd,persons_male,436,0.03456547368467813,0.028394015586692502,0.05095400388283775 +local,b600k.cps2024.acs050.s0,cd,persons_total,436,0.018644305737130547,0.014413897455800333,0.04227227158393402 +local,b600k.cps2024.acs050.s0,cd,real_estate_taxes_aggregate,436,0.3175581378533248,0.3400668093505594,0.2935751668108753 +local,b600k.cps2024.acs050.s0,cd,rent_contract_annual_aggregate,436,0.3304352513297145,0.27651374635816045,0.31815952267130265 +local,b600k.cps2024.acs050.s0,cd,rent_gross_annual_aggregate,436,0.2824901941921084,0.24411240637245554,0.2756038510261207 +local,b600k.cps2024.acs050.s0,cd,renter,436,0.18499827451019782,0.14029090205025418,0.1439488670291109 +local,b600k.cps2024.acs050.s0,county,households,850,0.09783130823413608,0.06800125414769595,0.07134703071043064 +local,b600k.cps2024.acs050.s0,county,owner,850,0.13477906949113072,0.10137689436216675,0.10953933697417954 +local,b600k.cps2024.acs050.s0,county,persons_0_17,850,0.1828703846666254,0.12862693075471004,0.15324594300906216 +local,b600k.cps2024.acs050.s0,county,persons_18_64,850,0.11496823266351937,0.08543549895437119,0.09387407087829701 +local,b600k.cps2024.acs050.s0,county,persons_65p,850,0.1555519567803619,0.11104351936914139,0.13138329285662573 +local,b600k.cps2024.acs050.s0,county,persons_in_households,850,0.09528248675848576,0.06047012983898152,0.08305863152062937 +local,b600k.cps2024.acs050.s0,county,persons_male,850,0.10393354313242668,0.06980999447546561,0.08620642395998672 +local,b600k.cps2024.acs050.s0,county,persons_total,850,0.09297528349753134,0.058774679952861814,0.07985714392887511 +local,b600k.cps2024.acs050.s0,county,real_estate_taxes_aggregate,850,0.3571769482059081,0.3573592047279689,0.30599337024901835 +local,b600k.cps2024.acs050.s0,county,rent_contract_annual_aggregate,850,0.40784640905344843,0.31034772381714526,0.39561522450692965 +local,b600k.cps2024.acs050.s0,county,rent_gross_annual_aggregate,850,0.35053528555173097,0.29028633049620245,0.32499046551842276 +local,b600k.cps2024.acs050.s0,county,renter,850,0.26231275319925407,0.1995853528054346,0.212857145745422 +local,b600k.cps2024.acs050.s0,national,households,1,0.032336353512029924,0.032336353512029924,0.024115482131001297 +local,b600k.cps2024.acs050.s0,national,owner,1,0.03457175248002986,0.03457175248002986,0.023264152060971526 +local,b600k.cps2024.acs050.s0,national,persons_0_17,1,0.06125774499788046,0.06125774499788046,0.03600752374625699 +local,b600k.cps2024.acs050.s0,national,persons_18_64,1,0.03494936996010198,0.03494936996010198,0.02417241595557154 +local,b600k.cps2024.acs050.s0,national,persons_65p,1,0.014764778868733246,0.014764778868733246,0.027642849392773294 +local,b600k.cps2024.acs050.s0,national,persons_in_households,1,0.006399865536524447,0.006399865536524447,0.00375341199422468 +local,b600k.cps2024.acs050.s0,national,persons_male,1,0.024654647101105733,0.024654647101105733,0.02929129328905722 +local,b600k.cps2024.acs050.s0,national,persons_total,1,0.010685144634787137,0.010685144634787137,0.017379591291849055 +local,b600k.cps2024.acs050.s0,national,real_estate_taxes_aggregate,1,0.3447151413040628,0.3447151413040628,0.3442077419912742 +local,b600k.cps2024.acs050.s0,national,rent_contract_annual_aggregate,1,0.09585074832836171,0.09585074832836171,0.11117040245830881 +local,b600k.cps2024.acs050.s0,national,rent_gross_annual_aggregate,1,0.2057277314702102,0.2057277314702102,0.21918566047517046 +local,b600k.cps2024.acs050.s0,national,renter,1,0.012865278922286031,0.012865278922286031,0.014194095837008477 +local,b600k.cps2024.acs050.s0,state,households,51,0.032007194916043466,0.025283081464900832,0.027163858774878504 +local,b600k.cps2024.acs050.s0,state,owner,51,0.03507593863574291,0.027582378261767848,0.02920626243099388 +local,b600k.cps2024.acs050.s0,state,persons_0_17,51,0.06189155700480338,0.05562028234945782,0.05148227764742262 +local,b600k.cps2024.acs050.s0,state,persons_18_64,51,0.03764758137430317,0.03547104971311619,0.029377604727982252 +local,b600k.cps2024.acs050.s0,state,persons_65p,51,0.01807447718105968,0.008724502963032456,0.038644476717323954 +local,b600k.cps2024.acs050.s0,state,persons_in_households,51,0.010489661344786702,0.005948596636565114,0.017402341813074974 +local,b600k.cps2024.acs050.s0,state,persons_male,51,0.02713557265966572,0.02427982274682227,0.02993045326881342 +local,b600k.cps2024.acs050.s0,state,persons_total,51,0.015889715996366037,0.014700276623316796,0.01932238423550864 +local,b600k.cps2024.acs050.s0,state,real_estate_taxes_aggregate,51,0.3167952158327863,0.3288416033139848,0.2831545117659953 +local,b600k.cps2024.acs050.s0,state,rent_contract_annual_aggregate,51,0.13502763616971852,0.09327678382807174,0.14725449826944895 +local,b600k.cps2024.acs050.s0,state,rent_gross_annual_aggregate,51,0.19071034262987832,0.1824313960088848,0.1951523975767883 +local,b600k.cps2024.acs050.s0,state,renter,51,0.08494412911540479,0.07245132192589954,0.05321330049212731 +local,b600k.cps2024.acs100.s0,cd,households,436,0.04631328952904988,0.03440322982697022,0.030061419843700195 +local,b600k.cps2024.acs100.s0,cd,owner,436,0.07264797649338368,0.053488306755058015,0.04509465449094906 +local,b600k.cps2024.acs100.s0,cd,persons_0_17,436,0.09252031857929835,0.08205764236636257,0.07972314206638158 +local,b600k.cps2024.acs100.s0,cd,persons_18_64,436,0.05063277428533783,0.042188068739634946,0.040270052483086245 +local,b600k.cps2024.acs100.s0,cd,persons_65p,436,0.07411385130460797,0.060358812544985076,0.0553797197180921 +local,b600k.cps2024.acs100.s0,cd,persons_male,436,0.03478025018968345,0.026583735272594645,0.044717927558343314 +local,b600k.cps2024.acs100.s0,cd,persons_total,436,0.01698517546355097,0.008570494351923579,0.038299130155592116 +local,b600k.cps2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.10834989208267094,0.0861561598965066,0.10919882484157147 +local,b600k.cps2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3235496662222627,0.25624658839149095,0.3160626471752382 +local,b600k.cps2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2794925873475555,0.24996955876717364,0.27585730257839186 +local,b600k.cps2024.acs100.s0,cd,renter,436,0.13445157375760514,0.12003657388111987,0.07901117774209547 +local,b600k.cps2024.acs100.s0,county,households,850,0.10098075378540407,0.0729988401875985,0.06689653047543878 +local,b600k.cps2024.acs100.s0,county,owner,850,0.12353509916452822,0.08792597038851821,0.08065964061352399 +local,b600k.cps2024.acs100.s0,county,persons_0_17,850,0.2010060991339971,0.1424213738856326,0.15509941710625452 +local,b600k.cps2024.acs100.s0,county,persons_18_64,850,0.1230526714349211,0.08934952418918088,0.08543760291011471 +local,b600k.cps2024.acs100.s0,county,persons_65p,850,0.1526957535834495,0.11446000046959678,0.10929178763468612 +local,b600k.cps2024.acs100.s0,county,persons_in_households,850,0.10616710847472154,0.0710325215458587,0.08135099465475124 +local,b600k.cps2024.acs100.s0,county,persons_male,850,0.1133099209881395,0.08329374196308785,0.08556084387389476 +local,b600k.cps2024.acs100.s0,county,persons_total,850,0.10388914886128885,0.07020871231587511,0.07847623406391573 +local,b600k.cps2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.1960317632558816,0.14354287967453427,0.16153074306399925 +local,b600k.cps2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4117596201201114,0.3361553669615458,0.3958742716723528 +local,b600k.cps2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3545257355090801,0.3018909279678914,0.3284680199300558 +local,b600k.cps2024.acs100.s0,county,renter,850,0.21552802752843056,0.17530040251694484,0.1488208730998836 +local,b600k.cps2024.acs100.s0,national,households,1,0.015332003170950863,0.015332003170950863,0.004032550306107907 +local,b600k.cps2024.acs100.s0,national,owner,1,0.04174945712942085,0.04174945712942085,0.005330971097048906 +local,b600k.cps2024.acs100.s0,national,persons_0_17,1,0.0777450749554749,0.0777450749554749,0.036277025047341385 +local,b600k.cps2024.acs100.s0,national,persons_18_64,1,0.04623676462692728,0.04623676462692728,0.020396038644001573 +local,b600k.cps2024.acs100.s0,national,persons_65p,1,0.0018840053042606967,0.0018840053042606967,0.015265749505787189 +local,b600k.cps2024.acs100.s0,national,persons_in_households,1,0.004105271987092934,0.004105271987092934,0.015181688429502196 +local,b600k.cps2024.acs100.s0,national,persons_male,1,0.027036860957599752,0.027036860957599752,0.028476246299673852 +local,b600k.cps2024.acs100.s0,national,persons_total,1,0.010986270563683809,0.010986270563683809,0.017379591291975412 +local,b600k.cps2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.041290201885559555,0.041290201885559555,0.0444345280130821 +local,b600k.cps2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.12721404802805134,0.12721404802805134,0.12799956725070355 +local,b600k.cps2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.23327959766375667,0.23327959766375667,0.2339696564497328 +local,b600k.cps2024.acs100.s0,national,renter,1,0.08184506225627963,0.08184506225627963,0.04398605432062964 +local,b600k.cps2024.acs100.s0,state,households,51,0.024653060248897258,0.020801671120720674,0.012551797889670965 +local,b600k.cps2024.acs100.s0,state,owner,51,0.03687949686926419,0.03370304162692925,0.01450316633318095 +local,b600k.cps2024.acs100.s0,state,persons_0_17,51,0.07420822934963915,0.06571109607763753,0.0418250264669515 +local,b600k.cps2024.acs100.s0,state,persons_18_64,51,0.04770688849995638,0.040316089636483914,0.024308408417819696 +local,b600k.cps2024.acs100.s0,state,persons_65p,51,0.012177951648235475,0.008324491139790502,0.02918024219017552 +local,b600k.cps2024.acs100.s0,state,persons_in_households,51,0.012176529005499651,0.008521794872012841,0.018703698460971988 +local,b600k.cps2024.acs100.s0,state,persons_male,51,0.029620086441041447,0.027414430034714908,0.026977597799269778 +local,b600k.cps2024.acs100.s0,state,persons_total,51,0.01754532975028096,0.013476681938521778,0.019067969513008286 +local,b600k.cps2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.06968032907050212,0.06586335176081728,0.04640083779828414 +local,b600k.cps2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.18259177273153981,0.15308353141938646,0.1896387156641729 +local,b600k.cps2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.21323882998205757,0.2043009251108927,0.2128487121032932 +local,b600k.cps2024.acs100.s0,state,renter,51,0.1046959744060641,0.11637787966366468,0.05368877525129426 +local,natural.cps2022-2023-2024.acs100.s0,cd,households,436,0.07540511234566043,0.057845579379849604,0.07702745456319936 +local,natural.cps2022-2023-2024.acs100.s0,cd,owner,436,0.13392787644101564,0.07883907365354922,0.1551484793891346 +local,natural.cps2022-2023-2024.acs100.s0,cd,persons_0_17,436,0.10327641910264818,0.0761772508676021,0.12072268393512044 +local,natural.cps2022-2023-2024.acs100.s0,cd,persons_18_64,436,0.05217585634143512,0.04360086463856078,0.05917639471386573 +local,natural.cps2022-2023-2024.acs100.s0,cd,persons_65p,436,0.11405603656598653,0.09358719221846742,0.14635989769733457 +local,natural.cps2022-2023-2024.acs100.s0,cd,persons_male,436,0.049577588918087334,0.04246466368143162,0.0586641436442937 +local,natural.cps2022-2023-2024.acs100.s0,cd,persons_total,436,0.029006630796119065,0.019729382879163794,0.05043010613657911 +local,natural.cps2022-2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.5213357066415857,0.5533734129912201,0.5774003843679367 +local,natural.cps2022-2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3197761785188397,0.27290534315769616,0.31082246755836407 +local,natural.cps2022-2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.29909666618326336,0.27770106667944133,0.28236030841940746 +local,natural.cps2022-2023-2024.acs100.s0,cd,renter,436,0.2664604163398467,0.21024887088190963,0.24081713613269728 +local,natural.cps2022-2023-2024.acs100.s0,county,households,850,0.13892983421829347,0.10277606672560821,0.11263403490092005 +local,natural.cps2022-2023-2024.acs100.s0,county,owner,850,0.18462971974091738,0.13678644385230898,0.167805318211452 +local,natural.cps2022-2023-2024.acs100.s0,county,persons_0_17,850,0.23413128747932224,0.17628670934662571,0.1809033074472681 +local,natural.cps2022-2023-2024.acs100.s0,county,persons_18_64,850,0.14967617234564762,0.10646173861368621,0.11595858180255403 +local,natural.cps2022-2023-2024.acs100.s0,county,persons_65p,850,0.24675285365419614,0.1746943296593832,0.20499269577599868 +local,natural.cps2022-2023-2024.acs100.s0,county,persons_in_households,850,0.125685981792034,0.08519151638436506,0.09871282288235243 +local,natural.cps2022-2023-2024.acs100.s0,county,persons_male,850,0.13560739685250875,0.0935963958921555,0.1072620855597396 +local,natural.cps2022-2023-2024.acs100.s0,county,persons_total,850,0.12110473884808991,0.07702166865169473,0.09804707185198311 +local,natural.cps2022-2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.5573923338166573,0.6018280239215406,0.5759967143315385 +local,natural.cps2022-2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4224663984853271,0.3457273169740376,0.40674062383306964 +local,natural.cps2022-2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3896932783559318,0.33728533625635815,0.3555046169024228 +local,natural.cps2022-2023-2024.acs100.s0,county,renter,850,0.3623826276332879,0.28197750306034625,0.31997071274398775 +local,natural.cps2022-2023-2024.acs100.s0,national,households,1,0.040387780448345845,0.040387780448345845,0.04038778011146347 +local,natural.cps2022-2023-2024.acs100.s0,national,owner,1,0.03176726865794991,0.03176726865794991,0.045042942663381706 +local,natural.cps2022-2023-2024.acs100.s0,national,persons_0_17,1,0.057697567601836725,0.057697567601836725,0.02109426309341987 +local,natural.cps2022-2023-2024.acs100.s0,national,persons_18_64,1,0.021869549647768823,0.021869549647768823,0.02674863655270408 +local,natural.cps2022-2023-2024.acs100.s0,national,persons_65p,1,0.024725659600010715,0.024725659600010715,0.01854702634614402 +local,natural.cps2022-2023-2024.acs100.s0,national,persons_in_households,1,0.019830852845274777,0.019830852845274777,0.007468807603571669 +local,natural.cps2022-2023-2024.acs100.s0,national,persons_male,1,0.022053808449748885,0.022053808449748885,0.030890456469580847 +local,natural.cps2022-2023-2024.acs100.s0,national,persons_total,1,0.005322445843410969,0.005322445843410969,0.017379591291682567 +local,natural.cps2022-2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.5806503342459348,0.5806503342459348,0.6659411721508848 +local,natural.cps2022-2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.13041730803118715,0.13041730803118715,0.13110826309032833 +local,natural.cps2022-2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.23609358062583674,0.23609358062583674,0.2367005671839316 +local,natural.cps2022-2023-2024.acs100.s0,national,renter,1,0.021920793185649746,0.021920793185649746,0.0022442128363368394 +local,natural.cps2022-2023-2024.acs100.s0,state,households,51,0.040646021516202904,0.025697944519990693,0.03881877297157921 +local,natural.cps2022-2023-2024.acs100.s0,state,owner,51,0.03665772336911784,0.03468317012378691,0.04937364843674731 +local,natural.cps2022-2023-2024.acs100.s0,state,persons_0_17,51,0.06031545366067818,0.05533990952109531,0.0512512979358957 +local,natural.cps2022-2023-2024.acs100.s0,state,persons_18_64,51,0.026433447088128954,0.020384168162733904,0.029082605581339526 +local,natural.cps2022-2023-2024.acs100.s0,state,persons_65p,51,0.022193028231726267,0.00996048907388512,0.033742093722682304 +local,natural.cps2022-2023-2024.acs100.s0,state,persons_in_households,51,0.02246442308562832,0.02333037575470418,0.02046149837401532 +local,natural.cps2022-2023-2024.acs100.s0,state,persons_male,51,0.026117854826033682,0.023004462175212688,0.030540574782716583 +local,natural.cps2022-2023-2024.acs100.s0,state,persons_total,51,0.012988246829486103,0.011175024432290112,0.017719590215261614 +local,natural.cps2022-2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.4731924914507492,0.46643698668248323,0.5512094530501028 +local,natural.cps2022-2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.1473850051072991,0.12311573761125603,0.146856471666088 +local,natural.cps2022-2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.23832652109429667,0.23459411488311963,0.23190637634799494 +local,natural.cps2022-2023-2024.acs100.s0,state,renter,51,0.08451060885800271,0.06617752905694989,0.058740079396226365 +local,natural.cps2023-2024.acs100.s0,cd,households,436,0.07614943208765626,0.062257226419604905,0.08277502694406316 +local,natural.cps2023-2024.acs100.s0,cd,owner,436,0.13365399160896327,0.08155264798912604,0.15894818149309695 +local,natural.cps2023-2024.acs100.s0,cd,persons_0_17,436,0.11558849712032289,0.08074575413758144,0.1314240580340637 +local,natural.cps2023-2024.acs100.s0,cd,persons_18_64,436,0.05718696265138407,0.04545943428920939,0.06701928843575958 +local,natural.cps2023-2024.acs100.s0,cd,persons_65p,436,0.12162413445613415,0.10124961728616372,0.15607458611058003 +local,natural.cps2023-2024.acs100.s0,cd,persons_male,436,0.053332516573297926,0.04270358684181585,0.06519931740039178 +local,natural.cps2023-2024.acs100.s0,cd,persons_total,436,0.03217426974725061,0.020807847118753834,0.05778904881748221 +local,natural.cps2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.5225040040726696,0.5566138452096581,0.5708461692628187 +local,natural.cps2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.327167843623451,0.2842748416257859,0.31372344832396415 +local,natural.cps2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.3024096789676448,0.26655756456749785,0.2819052309567561 +local,natural.cps2023-2024.acs100.s0,cd,renter,436,0.2729518499862507,0.21199670954151234,0.24063252735457533 +local,natural.cps2023-2024.acs100.s0,county,households,850,0.15522651612438146,0.10916796146972804,0.12839005773406914 +local,natural.cps2023-2024.acs100.s0,county,owner,850,0.19959654324938664,0.14835342409146113,0.18183632780875766 +local,natural.cps2023-2024.acs100.s0,county,persons_0_17,850,0.2688627376154944,0.2034855108866506,0.20671475325314057 +local,natural.cps2023-2024.acs100.s0,county,persons_18_64,850,0.16348032104483065,0.1113906442517216,0.13482870982268952 +local,natural.cps2023-2024.acs100.s0,county,persons_65p,850,0.27412133599403926,0.20808263003406513,0.22583543516884713 +local,natural.cps2023-2024.acs100.s0,county,persons_in_households,850,0.14557323798754077,0.09469196199206104,0.11802989076874319 +local,natural.cps2023-2024.acs100.s0,county,persons_male,850,0.15895506138802581,0.11102208812640453,0.12467915689743747 +local,natural.cps2023-2024.acs100.s0,county,persons_total,850,0.14089594199753924,0.091040619624878,0.1159027429880289 +local,natural.cps2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.5739859142061494,0.6128820810857272,0.5805521226553558 +local,natural.cps2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.43591801889029935,0.37737061302728225,0.4183083479274824 +local,natural.cps2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.40028974591529787,0.3424993859238299,0.36442305605289327 +local,natural.cps2023-2024.acs100.s0,county,renter,850,0.3832705341144995,0.30525923548666345,0.3377028256883096 +local,natural.cps2023-2024.acs100.s0,national,households,1,0.04063176112255874,0.04063176112255874,0.04063176077420849 +local,natural.cps2023-2024.acs100.s0,national,owner,1,0.022545526445586706,0.022545526445586706,0.04234516572780774 +local,natural.cps2023-2024.acs100.s0,national,persons_0_17,1,0.06560880747203571,0.06560880747203571,0.027390231881191725 +local,natural.cps2023-2024.acs100.s0,national,persons_18_64,1,0.024210841015624488,0.024210841015624488,0.026805015070435673 +local,natural.cps2023-2024.acs100.s0,national,persons_65p,1,0.01815893615253982,0.01815893615253982,0.026233676447537487 +local,natural.cps2023-2024.acs100.s0,national,persons_in_households,1,0.021329048231944196,0.021329048231944196,0.007468807603658995 +local,natural.cps2023-2024.acs100.s0,national,persons_male,1,0.020676054440222417,0.020676054440222417,0.030408793665987435 +local,natural.cps2023-2024.acs100.s0,national,persons_total,1,0.003861202227664904,0.003861202227664904,0.017379591291597395 +local,natural.cps2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.5829667255713036,0.5829667255713036,0.6562268648260742 +local,natural.cps2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.11963730763422183,0.11963730763422183,0.1222749686344348 +local,natural.cps2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.22662362270216502,0.22662362270216502,0.22894074123362246 +local,natural.cps2023-2024.acs100.s0,national,renter,1,0.03785996198865447,0.03785996198865447,0.0025205865935970695 +local,natural.cps2023-2024.acs100.s0,state,households,51,0.04198503930902408,0.03228674226874621,0.04016948176038618 +local,natural.cps2023-2024.acs100.s0,state,owner,51,0.03308553809866008,0.027205084526144098,0.0475753262127579 +local,natural.cps2023-2024.acs100.s0,state,persons_0_17,51,0.06819003717423872,0.061511846444112415,0.05483953711216384 +local,natural.cps2023-2024.acs100.s0,state,persons_18_64,51,0.028754070959068546,0.02600944299238805,0.030737259274090486 +local,natural.cps2023-2024.acs100.s0,state,persons_65p,51,0.01990092740353616,0.010851741559137944,0.039588997541004305 +local,natural.cps2023-2024.acs100.s0,state,persons_in_households,51,0.024196195064285705,0.024117340144685143,0.019558544514582797 +local,natural.cps2023-2024.acs100.s0,state,persons_male,51,0.027369181098441855,0.022261538368759468,0.031232583282333474 +local,natural.cps2023-2024.acs100.s0,state,persons_total,51,0.014241481090268038,0.012343450398292573,0.01896484744926104 +local,natural.cps2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.4737531646398597,0.47074482833320913,0.5416227019420785 +local,natural.cps2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.14236716628209123,0.127486835248893,0.14160292476457131 +local,natural.cps2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.22789334394021554,0.21285280860011313,0.2199685049241719 +local,natural.cps2023-2024.acs100.s0,state,renter,51,0.08421971743159207,0.08235674530928502,0.06435477021533247 +local,natural.cps2024.acs100.s0,cd,households,436,0.08220366814853361,0.0631339164515669,0.09485650794965793 +local,natural.cps2024.acs100.s0,cd,owner,436,0.1434525866770899,0.0966895693762451,0.16382697748832892 +local,natural.cps2024.acs100.s0,cd,persons_0_17,436,0.14834450821242634,0.10916112048929648,0.14777727883399977 +local,natural.cps2024.acs100.s0,cd,persons_18_64,436,0.06974197391139507,0.057753905585046575,0.08294160725513632 +local,natural.cps2024.acs100.s0,cd,persons_65p,436,0.13919514820262557,0.1128015228071915,0.18024911975409463 +local,natural.cps2024.acs100.s0,cd,persons_male,436,0.06796369607541229,0.05330903140045172,0.07885285265254408 +local,natural.cps2024.acs100.s0,cd,persons_total,436,0.04234683405409704,0.027297789606765065,0.06848544826429406 +local,natural.cps2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.531037740642254,0.5828653566141992,0.5633972274948349 +local,natural.cps2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3453958337508021,0.28766505332603265,0.3259537712970768 +local,natural.cps2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.3144300142391268,0.2768072751657581,0.28928162032719945 +local,natural.cps2024.acs100.s0,cd,renter,436,0.28851684242352316,0.23420011327154236,0.26236095878741444 +local,natural.cps2024.acs100.s0,county,households,850,0.18340329827082166,0.1318779279255276,0.15704041939673816 +local,natural.cps2024.acs100.s0,county,owner,850,0.23441396517079885,0.17672790400157856,0.2061870685621213 +local,natural.cps2024.acs100.s0,county,persons_0_17,850,0.3110320637632594,0.23813975886672878,0.2581973448995865 +local,natural.cps2024.acs100.s0,county,persons_18_64,850,0.19726147487562953,0.14253368825513285,0.17287164263315008 +local,natural.cps2024.acs100.s0,county,persons_65p,850,0.30991792900951187,0.2345160224239607,0.2717549856453685 +local,natural.cps2024.acs100.s0,county,persons_in_households,850,0.17343080084395257,0.11983388976278656,0.14800136876415262 +local,natural.cps2024.acs100.s0,county,persons_male,850,0.18985370347430827,0.1310520767534153,0.15951010376184974 +local,natural.cps2024.acs100.s0,county,persons_total,850,0.16954231027465563,0.11118258922455701,0.1444797641695114 +local,natural.cps2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.5980137421440218,0.6351943541487559,0.5894351449274059 +local,natural.cps2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.45320674094233765,0.3929571053765445,0.44581404382435347 +local,natural.cps2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.42179788658900635,0.3732401694738438,0.4024978514520762 +local,natural.cps2024.acs100.s0,county,renter,850,0.4110610856933404,0.35009284832573473,0.3615559908221512 +local,natural.cps2024.acs100.s0,national,households,1,0.04250326644314316,0.04250326644314316,0.042503266232261264 +local,natural.cps2024.acs100.s0,national,owner,1,0.01440351750882893,0.01440351750882893,0.040108595495469086 +local,natural.cps2024.acs100.s0,national,persons_0_17,1,0.08496761329639906,0.08496761329639906,0.03288093308224219 +local,natural.cps2024.acs100.s0,national,persons_18_64,1,0.02974559765005693,0.02974559765005693,0.02864364719867025 +local,natural.cps2024.acs100.s0,national,persons_65p,1,0.012489195784942396,0.012489195784942396,0.03895423703666744 +local,natural.cps2024.acs100.s0,national,persons_in_households,1,0.023195854213774996,0.023195854213774996,0.007468807603635457 +local,natural.cps2024.acs100.s0,national,persons_male,1,0.023788730861614666,0.023788730861614666,0.030150509780975852 +local,natural.cps2024.acs100.s0,national,persons_total,1,0.0020404394973437146,0.0020404394973437146,0.017379591291620353 +local,natural.cps2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.5879131540785364,0.5879131540785364,0.639541193265433 +local,natural.cps2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.09088139489565485,0.09088139489565485,0.09886944608012654 +local,natural.cps2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.20136228006180068,0.20136228006180068,0.2083795811585964 +local,natural.cps2024.acs100.s0,national,renter,1,0.058752316297939255,0.058752316297939255,0.012242781550831461 +local,natural.cps2024.acs100.s0,state,households,51,0.04436222493936667,0.03202795952669077,0.04113183240017889 +local,natural.cps2024.acs100.s0,state,owner,51,0.03435769419899883,0.027190169343451618,0.04737445437547842 +local,natural.cps2024.acs100.s0,state,persons_0_17,51,0.08637521734525148,0.08106642236178443,0.05938231280038797 +local,natural.cps2024.acs100.s0,state,persons_18_64,51,0.03776363982985699,0.03662854367125631,0.036220431440798125 +local,natural.cps2024.acs100.s0,state,persons_65p,51,0.02095727416815766,0.012429624152864891,0.05328853265490045 +local,natural.cps2024.acs100.s0,state,persons_in_households,51,0.024172264172288047,0.021393504939839953,0.019861435559825478 +local,natural.cps2024.acs100.s0,state,persons_male,51,0.03256569993799309,0.02668356596447052,0.030691014864309484 +local,natural.cps2024.acs100.s0,state,persons_total,51,0.01761588051050974,0.015439013390945106,0.018409030751607942 +local,natural.cps2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.48314861955557775,0.48796264044038046,0.5260015221555046 +local,natural.cps2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.1181146554481196,0.09008305650773704,0.1275977982147394 +local,natural.cps2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.19700328389446067,0.18923332449842212,0.20252115687966973 +local,natural.cps2024.acs100.s0,state,renter,51,0.08309865598041244,0.07655892242684272,0.0715128987627851 +national,b1200k.cps0.acs100.s0,cd,households,436,0.06546793875483832,0.054173142604860315,0.016911495924950226 +national,b1200k.cps0.acs100.s0,cd,owner,436,0.08443946777482256,0.06358701707880085,0.027389507466497036 +national,b1200k.cps0.acs100.s0,cd,persons_0_17,436,0.1169496587934543,0.09192561608134726,0.06654691908238346 +national,b1200k.cps0.acs100.s0,cd,persons_18_64,436,0.07225207122715917,0.06081269681548772,0.030189007725320485 +national,b1200k.cps0.acs100.s0,cd,persons_65p,436,0.0998200485692092,0.07855984754662149,0.03557104609681045 +national,b1200k.cps0.acs100.s0,cd,persons_in_households,436,0.06701733094604381,0.04906508679343942,0.029365614160002666 +national,b1200k.cps0.acs100.s0,cd,persons_male,436,0.07005592850904079,0.05260624743872369,0.03622902588748794 +national,b1200k.cps0.acs100.s0,cd,persons_total,436,0.06559762185698083,0.04877150119357489,0.028675723791477488 +national,b1200k.cps0.acs100.s0,cd,real_estate_taxes_aggregate,436,0.1869510322206518,0.14121382622288814,0.10122144808323005 +national,b1200k.cps0.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3366728240012871,0.2741018721266164,0.31736926347378935 +national,b1200k.cps0.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2966479759042343,0.2642582100269653,0.27748145721184314 +national,b1200k.cps0.acs100.s0,cd,renter,436,0.13953953919524628,0.1251801998749738,0.06711358591432277 +national,b1200k.cps0.acs100.s0,county,households,850,0.10634842009063332,0.07745041404102722,0.04022659235624308 +national,b1200k.cps0.acs100.s0,county,owner,850,0.13250258107792434,0.09673740831069724,0.05181320521507365 +national,b1200k.cps0.acs100.s0,county,persons_0_17,850,0.2060140491052898,0.1358077579489788,0.11612417671617863 +national,b1200k.cps0.acs100.s0,county,persons_18_64,850,0.1237183461416908,0.0956166370972192,0.062008162383127195 +national,b1200k.cps0.acs100.s0,county,persons_65p,850,0.1590565765985806,0.12094384340493194,0.07428653610579898 +national,b1200k.cps0.acs100.s0,county,persons_in_households,850,0.12021694367858081,0.08325846696566512,0.05780813581478426 +national,b1200k.cps0.acs100.s0,county,persons_male,850,0.12045492902317512,0.08761635068133222,0.06327159961501264 +national,b1200k.cps0.acs100.s0,county,persons_total,850,0.11589559031619459,0.08376375731960828,0.05559416595186459 +national,b1200k.cps0.acs100.s0,county,real_estate_taxes_aggregate,850,0.24476593189559426,0.1804210581133128,0.14261841373325493 +national,b1200k.cps0.acs100.s0,county,rent_contract_annual_aggregate,850,0.41036812252598714,0.32226411491089835,0.3952170587464888 +national,b1200k.cps0.acs100.s0,county,rent_gross_annual_aggregate,850,0.35619568740091945,0.30007594905410495,0.32378289924857434 +national,b1200k.cps0.acs100.s0,county,renter,850,0.21483222329838148,0.17726360911606664,0.1188825367351446 +national,b1200k.cps0.acs100.s0,national,households,1,0.010558941858680988,0.010558941858680988,0.00012716099964809008 +national,b1200k.cps0.acs100.s0,national,owner,1,0.05423551983639365,0.05423551983639365,0.0007317503461692467 +national,b1200k.cps0.acs100.s0,national,persons_0_17,1,0.07386665745265425,0.07386665745265425,0.037687584363355786 +national,b1200k.cps0.acs100.s0,national,persons_18_64,1,0.029815280556425145,0.029815280556425145,0.018638293933160584 +national,b1200k.cps0.acs100.s0,national,persons_65p,1,0.00019075972384936354,0.00019075972384936354,0.011035015710395802 +national,b1200k.cps0.acs100.s0,national,persons_in_households,1,0.0023614207712549743,0.0023614207712549743,0.017428446304894415 +national,b1200k.cps0.acs100.s0,national,persons_male,1,0.015748957667921837,0.015748957667921837,0.028831067096646904 +national,b1200k.cps0.acs100.s0,national,persons_total,1,0.002248354336395304,0.002248354336395304,0.017379591291828728 +national,b1200k.cps0.acs100.s0,national,real_estate_taxes_aggregate,1,0.152194409891978,0.152194409891978,0.016208821369269332 +national,b1200k.cps0.acs100.s0,national,rent_contract_annual_aggregate,1,0.13363101365625613,0.13363101365625613,0.1313430482891693 +national,b1200k.cps0.acs100.s0,national,rent_gross_annual_aggregate,1,0.23891673980281022,0.23891673980281022,0.23690682004777663 +national,b1200k.cps0.acs100.s0,national,renter,1,0.1169701040508225,0.1169701040508225,0.0493118006082098 +national,b1200k.cps0.acs100.s0,state,households,51,0.028819994115773725,0.02071824690965909,0.006340511853583996 +national,b1200k.cps0.acs100.s0,state,owner,51,0.04547067367289003,0.036835758997527696,0.007269437556433841 +national,b1200k.cps0.acs100.s0,state,persons_0_17,51,0.07287006204103653,0.058378296625487464,0.03864460240960343 +national,b1200k.cps0.acs100.s0,state,persons_18_64,51,0.03636647475120756,0.024412975473871362,0.021234174699764987 +national,b1200k.cps0.acs100.s0,state,persons_65p,51,0.014497058920451252,0.005164687289088426,0.016713799694230005 +national,b1200k.cps0.acs100.s0,state,persons_in_households,51,0.018524911370139303,0.014876615855457125,0.017791336343165817 +national,b1200k.cps0.acs100.s0,state,persons_male,51,0.026192468054496362,0.021417031437589024,0.025371236158061715 +national,b1200k.cps0.acs100.s0,state,persons_total,51,0.01872612694731292,0.015966647188095998,0.01756616344174996 +national,b1200k.cps0.acs100.s0,state,real_estate_taxes_aggregate,51,0.1168546318781668,0.11552927844606527,0.021820775325743013 +national,b1200k.cps0.acs100.s0,state,rent_contract_annual_aggregate,51,0.20569465782392887,0.16493797602630117,0.1980296977894466 +national,b1200k.cps0.acs100.s0,state,rent_gross_annual_aggregate,51,0.2339112636740966,0.18696435038167245,0.21777165814576163 +national,b1200k.cps0.acs100.s0,state,renter,51,0.13534035224523353,0.13478558562144738,0.06036941203737398 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,households,436,0.05451548181538968,0.03817861878301035,0.04518524883062504 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,owner,436,0.14364452487567272,0.07493835716023792,0.1404255430161006 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_0_17,436,0.14005176420782756,0.10788144908727218,0.11965151863731681 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_18_64,436,0.05733503125066456,0.041824143261969815,0.05732985391201939 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_65p,436,0.12624836582491977,0.09076052564087966,0.12667758978290083 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_in_households,436,0.0626337926974403,0.0485528947260959,0.05326810925290876 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_male,436,0.05876732738614794,0.04286977951821295,0.0589791545885527 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,persons_total,436,0.051547071734603246,0.037444373263443506,0.04942042985000886 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.4650073785272531,0.4812431984258392,0.5765496463852601 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3196052937233895,0.26305477996825155,0.31374362377056914 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.2943314966023563,0.2708701017829651,0.2865611639180526 +national,b1200k.cps2022-2023-2024.acs000.s0,cd,renter,436,0.22984847276547996,0.1726288202001957,0.22171063149334405 +national,b1200k.cps2022-2023-2024.acs000.s0,county,households,850,0.0768432450864388,0.05156944690116871,0.06351266137919379 +national,b1200k.cps2022-2023-2024.acs000.s0,county,owner,850,0.14013468009057184,0.09960356934199063,0.1350622630923501 +national,b1200k.cps2022-2023-2024.acs000.s0,county,persons_0_17,850,0.18712457946524397,0.1295450496977455,0.15380407717060152 +national,b1200k.cps2022-2023-2024.acs000.s0,county,persons_18_64,850,0.10413464499288051,0.0756495854288235,0.09274177961645999 +national,b1200k.cps2022-2023-2024.acs000.s0,county,persons_65p,850,0.16362461464072808,0.12101450361485724,0.15379855358052308 +national,b1200k.cps2022-2023-2024.acs000.s0,county,persons_in_households,850,0.09606265347182905,0.06781912506938807,0.07819523906848598 +national,b1200k.cps2022-2023-2024.acs000.s0,county,persons_male,850,0.09130179635302935,0.06187555806756819,0.08118995883186989 +national,b1200k.cps2022-2023-2024.acs000.s0,county,persons_total,850,0.08493720476993373,0.059820849834040096,0.0716431515359234 +national,b1200k.cps2022-2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.46880688301521106,0.48884984339941434,0.5481905154373263 +national,b1200k.cps2022-2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.3955689211356353,0.30396527198937856,0.39448468761155026 +national,b1200k.cps2022-2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.34460997543922506,0.29044493148714357,0.3343185758806215 +national,b1200k.cps2022-2023-2024.acs000.s0,county,renter,850,0.30349607724372124,0.2334813038587007,0.29234951692374417 +national,b1200k.cps2022-2023-2024.acs000.s0,national,households,1,0.04038778048023349,0.04038778048023349,0.040387780113526596 +national,b1200k.cps2022-2023-2024.acs000.s0,national,owner,1,0.04831345839021407,0.04831345839021407,0.04504294266257366 +national,b1200k.cps2022-2023-2024.acs000.s0,national,persons_0_17,1,0.06277949067212106,0.06277949067212106,0.02109426309361929 +national,b1200k.cps2022-2023-2024.acs000.s0,national,persons_18_64,1,0.013726514007556471,0.013726514007556471,0.026748636553088446 +national,b1200k.cps2022-2023-2024.acs000.s0,national,persons_65p,1,0.0008771057661626095,0.0008771057661626095,0.018547026346188787 +national,b1200k.cps2022-2023-2024.acs000.s0,national,persons_in_households,1,0.030406501879641862,0.030406501879641862,0.007468807604379701 +national,b1200k.cps2022-2023-2024.acs000.s0,national,persons_male,1,0.007838102220557431,0.007838102220557431,0.030890456469098288 +national,b1200k.cps2022-2023-2024.acs000.s0,national,persons_total,1,0.00499236340733319,0.00499236340733319,0.017379591290894465 +national,b1200k.cps2022-2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5416611131360461,0.5416611131360461,0.6659411721508772 +national,b1200k.cps2022-2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.11977764934147685,0.11977764934147685,0.13110826309010554 +national,b1200k.cps2022-2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.22674690934536548,0.22674690934536548,0.2367005671837359 +national,b1200k.cps2022-2023-2024.acs000.s0,national,renter,1,0.007741896161846939,0.007741896161846939,0.002244212836202863 +national,b1200k.cps2022-2023-2024.acs000.s0,state,households,51,0.0379056054907576,0.029024202915816193,0.038818772971576876 +national,b1200k.cps2022-2023-2024.acs000.s0,state,owner,51,0.0429652110955016,0.04307216549785715,0.0493736484367394 +national,b1200k.cps2022-2023-2024.acs000.s0,state,persons_0_17,51,0.07019951390436269,0.06793177428186521,0.0512512979358941 +national,b1200k.cps2022-2023-2024.acs000.s0,state,persons_18_64,51,0.024045688728291437,0.01837915935152689,0.02908260558134452 +national,b1200k.cps2022-2023-2024.acs000.s0,state,persons_65p,51,0.02494037196749165,0.009529376717633513,0.033742093722682054 +national,b1200k.cps2022-2023-2024.acs000.s0,state,persons_in_households,51,0.030159170408585956,0.026678339762829868,0.020461498374014224 +national,b1200k.cps2022-2023-2024.acs000.s0,state,persons_male,51,0.021125124782964882,0.015511912205287116,0.030540574782717666 +national,b1200k.cps2022-2023-2024.acs000.s0,state,persons_total,51,0.015002316947355694,0.010062245287784842,0.017719590215260896 +national,b1200k.cps2022-2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4576004801285932,0.4498792447346817,0.5512094530501032 +national,b1200k.cps2022-2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.14142213219316677,0.1364040588040572,0.14685647166608887 +national,b1200k.cps2022-2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2295133425846581,0.2091160801798269,0.23190637634799482 +national,b1200k.cps2022-2023-2024.acs000.s0,state,renter,51,0.08648735510840705,0.0803880192029289,0.0587400793962271 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,households,436,0.06041600094470999,0.05013480503224342,0.022072086987933517 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,owner,436,0.08731862542122648,0.06015670036845671,0.04119741442822208 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_0_17,436,0.11192660917866892,0.09253444203168251,0.06407429334169583 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_18_64,436,0.06003997768457427,0.052455539427254255,0.029576337882797 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_65p,436,0.0742934478704951,0.0661292375807888,0.0434547563822687 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_in_households,436,0.053765782491547204,0.04355600234816263,0.027157654089691684 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_male,436,0.05315438755452788,0.0434890050277892,0.034858214194812345 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,persons_total,436,0.05080852673405483,0.040030973244658624,0.027570366598346125 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.145243255351463,0.1271695231351176,0.1073369274538778 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.32795521927631044,0.27417375306834113,0.3112882414289057 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.28226132408111115,0.25279734248011915,0.2727051118203135 +national,b1200k.cps2022-2023-2024.acs100.s0,cd,renter,436,0.13236915410564784,0.10702965807750398,0.07244212156029424 +national,b1200k.cps2022-2023-2024.acs100.s0,county,households,850,0.0979385606135919,0.0717232077703103,0.04623431398270421 +national,b1200k.cps2022-2023-2024.acs100.s0,county,owner,850,0.11971162647551249,0.0851709292735517,0.06286937117629632 +national,b1200k.cps2022-2023-2024.acs100.s0,county,persons_0_17,850,0.19035662678664453,0.13143294763693902,0.11212966185436829 +national,b1200k.cps2022-2023-2024.acs100.s0,county,persons_18_64,850,0.11074703830309074,0.08244014060907524,0.0629789352653305 +national,b1200k.cps2022-2023-2024.acs100.s0,county,persons_65p,850,0.13455135132452523,0.0973448067319476,0.08174509207721281 +national,b1200k.cps2022-2023-2024.acs100.s0,county,persons_in_households,850,0.10629633617868862,0.07414361548969986,0.057486963759458595 +national,b1200k.cps2022-2023-2024.acs100.s0,county,persons_male,850,0.10601088252231163,0.0774645529402343,0.06365689945447187 +national,b1200k.cps2022-2023-2024.acs100.s0,county,persons_total,850,0.10046824015713667,0.07032113563683026,0.056121061356943086 +national,b1200k.cps2022-2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.20323370424676926,0.16181923855164315,0.1441357392419482 +national,b1200k.cps2022-2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.41156457845686595,0.3118254509798863,0.3908362320336901 +national,b1200k.cps2022-2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.34935049685415537,0.2925827027275735,0.32001474708529537 +national,b1200k.cps2022-2023-2024.acs100.s0,county,renter,850,0.19270855655202493,0.1414548537641125,0.11658787580125685 +national,b1200k.cps2022-2023-2024.acs100.s0,national,households,1,0.026563393959247634,0.026563393959247634,0.005732790784073824 +national,b1200k.cps2022-2023-2024.acs100.s0,national,owner,1,0.05450937129122916,0.05450937129122916,0.006959414264278527 +national,b1200k.cps2022-2023-2024.acs100.s0,national,persons_0_17,1,0.07266146947567735,0.07266146947567735,0.03563993224750431 +national,b1200k.cps2022-2023-2024.acs100.s0,national,persons_18_64,1,0.023803759398979604,0.023803759398979604,0.019905132411002127 +national,b1200k.cps2022-2023-2024.acs100.s0,national,persons_65p,1,0.00043019772710799014,0.00043019772710799014,0.012856450490533357 +national,b1200k.cps2022-2023-2024.acs100.s0,national,persons_in_households,1,0.013432566955972992,0.013432566955972992,0.013839414143941027 +national,b1200k.cps2022-2023-2024.acs100.s0,national,persons_male,1,0.011380888429701079,0.011380888429701079,0.02887160484491514 +national,b1200k.cps2022-2023-2024.acs100.s0,national,persons_total,1,0.0010900647406718313,0.0010900647406718313,0.017379591296109748 +national,b1200k.cps2022-2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.10426920881433889,0.10426920881433889,0.0817794119248525 +national,b1200k.cps2022-2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.11391847304485785,0.11391847304485785,0.13162350159042394 +national,b1200k.cps2022-2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.22159977103802586,0.22159977103802586,0.2371531911854979 +national,b1200k.cps2022-2023-2024.acs100.s0,national,renter,1,0.0690807669902546,0.0690807669902546,0.04215922834937168 +national,b1200k.cps2022-2023-2024.acs100.s0,state,households,51,0.031742891968322716,0.02857981850385344,0.008128965882120278 +national,b1200k.cps2022-2023-2024.acs100.s0,state,owner,51,0.045179940254903406,0.03798997857730957,0.010166682506037894 +national,b1200k.cps2022-2023-2024.acs100.s0,state,persons_0_17,51,0.07376621987233242,0.061166124844763234,0.03951583348206128 +national,b1200k.cps2022-2023-2024.acs100.s0,state,persons_18_64,51,0.03100246568661352,0.021389718599586473,0.021553838014691296 +national,b1200k.cps2022-2023-2024.acs100.s0,state,persons_65p,51,0.016526415054247973,0.005308762386152957,0.01929052988991131 +national,b1200k.cps2022-2023-2024.acs100.s0,state,persons_in_households,51,0.01842043189390582,0.013786448726127921,0.015489999611270629 +national,b1200k.cps2022-2023-2024.acs100.s0,state,persons_male,51,0.02038177040295603,0.014647118993459296,0.02459271957332012 +national,b1200k.cps2022-2023-2024.acs100.s0,state,persons_total,51,0.016379409880188406,0.013602054632206553,0.017107951769455565 +national,b1200k.cps2022-2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.11002329774535713,0.11267009335738574,0.06472528643643173 +national,b1200k.cps2022-2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.17951264880396817,0.1488322365176712,0.1831818536384398 +national,b1200k.cps2022-2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.2145503817746966,0.1873073510788503,0.2117863175680653 +national,b1200k.cps2022-2023-2024.acs100.s0,state,renter,51,0.10238429958537473,0.09144329248434328,0.056837507657463315 +national,b1200k.cps2023-2024.acs000.s0,cd,households,436,0.05229610189711505,0.04076424158224266,0.044564574207843 +national,b1200k.cps2023-2024.acs000.s0,cd,owner,436,0.14428663142962772,0.07795509798799025,0.14153227525093334 +national,b1200k.cps2023-2024.acs000.s0,cd,persons_0_17,436,0.14460919963839905,0.10913297718693643,0.12293927498450163 +national,b1200k.cps2023-2024.acs000.s0,cd,persons_18_64,436,0.06003627343475018,0.04346907002556902,0.06042594908692552 +national,b1200k.cps2023-2024.acs000.s0,cd,persons_65p,436,0.1270365821173296,0.08504271907693822,0.1287992584404723 +national,b1200k.cps2023-2024.acs000.s0,cd,persons_in_households,436,0.06468166225140534,0.048638043534739384,0.055343451728596574 +national,b1200k.cps2023-2024.acs000.s0,cd,persons_male,436,0.06178924739792604,0.046975984850352176,0.06182140406886844 +national,b1200k.cps2023-2024.acs000.s0,cd,persons_total,436,0.05376246003153555,0.0388579650598753,0.051768503933713614 +national,b1200k.cps2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.46034191709145006,0.48283769849552327,0.567240671218558 +national,b1200k.cps2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.321109724988121,0.2717203325215143,0.3167342940476949 +national,b1200k.cps2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.29043128573031674,0.2651533712939631,0.28658779645383037 +national,b1200k.cps2023-2024.acs000.s0,cd,renter,436,0.23061611988162764,0.1720566495538771,0.2215426684768285 +national,b1200k.cps2023-2024.acs000.s0,county,households,850,0.07564292922391698,0.05171477858378123,0.06282201659937088 +national,b1200k.cps2023-2024.acs000.s0,county,owner,850,0.14192214054230437,0.10226766154364364,0.1364383464137909 +national,b1200k.cps2023-2024.acs000.s0,county,persons_0_17,850,0.19337516273570035,0.14169721046561434,0.1551641847716341 +national,b1200k.cps2023-2024.acs000.s0,county,persons_18_64,850,0.10500787345278097,0.07435756992471007,0.09394595132377956 +national,b1200k.cps2023-2024.acs000.s0,county,persons_65p,850,0.16647417480175625,0.11927721329767813,0.1551185502768662 +national,b1200k.cps2023-2024.acs000.s0,county,persons_in_households,850,0.09811125205837246,0.06870923506633814,0.07986795721353147 +national,b1200k.cps2023-2024.acs000.s0,county,persons_male,850,0.09497936905873954,0.06638417628738988,0.08350473885300172 +national,b1200k.cps2023-2024.acs000.s0,county,persons_total,850,0.08727782701053774,0.06186504731538747,0.0730137023744197 +national,b1200k.cps2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.463759908055527,0.488434997906943,0.5407990038976922 +national,b1200k.cps2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.4007135511576633,0.3122059182646376,0.40129323930771454 +national,b1200k.cps2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.34467296653748786,0.2839023488067183,0.3348004185410823 +national,b1200k.cps2023-2024.acs000.s0,county,renter,850,0.3086265631237274,0.2382927657521377,0.2964990840290454 +national,b1200k.cps2023-2024.acs000.s0,national,households,1,0.04063176116594727,0.04063176116594727,0.04063176077459197 +national,b1200k.cps2023-2024.acs000.s0,national,owner,1,0.03946585179543923,0.03946585179543923,0.042345165726567116 +national,b1200k.cps2023-2024.acs000.s0,national,persons_0_17,1,0.06539451193788928,0.06539451193788928,0.027390231881011307 +national,b1200k.cps2023-2024.acs000.s0,national,persons_18_64,1,0.014444841042076124,0.014444841042076124,0.026805015070826117 +national,b1200k.cps2023-2024.acs000.s0,national,persons_65p,1,0.0005185413224120335,0.0005185413224120335,0.026233676447592717 +national,b1200k.cps2023-2024.acs000.s0,national,persons_in_households,1,0.030601672290346875,0.030601672290346875,0.00746880760318086 +national,b1200k.cps2023-2024.acs000.s0,national,persons_male,1,0.008383851747897386,0.008383851747897386,0.030408793666069425 +national,b1200k.cps2023-2024.acs000.s0,national,persons_total,1,0.0051827200985650555,0.0051827200985650555,0.017379591292063738 +national,b1200k.cps2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5376258757808923,0.5376258757808923,0.6562268648260605 +national,b1200k.cps2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.10873585520264276,0.10873585520264276,0.12227496863453662 +national,b1200k.cps2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.2170469722353409,0.2170469722353409,0.2289407412337119 +national,b1200k.cps2023-2024.acs000.s0,national,renter,1,0.007137192105146624,0.007137192105146624,0.0025205865938268818 +national,b1200k.cps2023-2024.acs000.s0,state,households,51,0.03874011973361332,0.031193550120366773,0.040169481760378004 +national,b1200k.cps2023-2024.acs000.s0,state,owner,51,0.03758164556385783,0.032303637690366635,0.047575326212757944 +national,b1200k.cps2023-2024.acs000.s0,state,persons_0_17,51,0.07120949689664875,0.0653481588591093,0.05483953711216453 +national,b1200k.cps2023-2024.acs000.s0,state,persons_18_64,51,0.024433838332240016,0.01933299402871407,0.03073725927409112 +national,b1200k.cps2023-2024.acs000.s0,state,persons_65p,51,0.023718865673635826,0.00825187481817984,0.03958899754100444 +national,b1200k.cps2023-2024.acs000.s0,state,persons_in_households,51,0.030877263752129815,0.027060229649257334,0.019558544514569513 +national,b1200k.cps2023-2024.acs000.s0,state,persons_male,51,0.02385552560621096,0.020907866360504408,0.031232583282332423 +national,b1200k.cps2023-2024.acs000.s0,state,persons_total,51,0.01451210126625384,0.010736373773807746,0.018964847449251816 +national,b1200k.cps2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4512877821023978,0.44446286213850394,0.5416227019420768 +national,b1200k.cps2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.13855426735458232,0.12616403574760654,0.1416029247645683 +national,b1200k.cps2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.21999537634744912,0.2163595262817437,0.2199685049241693 +national,b1200k.cps2023-2024.acs000.s0,state,renter,51,0.0766559888831949,0.065592318475988,0.06435477021533238 +national,b1200k.cps2023-2024.acs100.s0,cd,households,436,0.061529557143438565,0.04880316229454022,0.020154341983230194 +national,b1200k.cps2023-2024.acs100.s0,cd,owner,436,0.08205168602741814,0.05903913416807109,0.03577675830490396 +national,b1200k.cps2023-2024.acs100.s0,cd,persons_0_17,436,0.11242075604232964,0.0894544959098565,0.0654114033746476 +national,b1200k.cps2023-2024.acs100.s0,cd,persons_18_64,436,0.06489785197470431,0.05155811475807946,0.029571705565789384 +national,b1200k.cps2023-2024.acs100.s0,cd,persons_65p,436,0.07391434478786513,0.06048442254383907,0.039860944908416435 +national,b1200k.cps2023-2024.acs100.s0,cd,persons_in_households,436,0.057415342808225,0.044038902423270826,0.027963745981461067 +national,b1200k.cps2023-2024.acs100.s0,cd,persons_male,436,0.05759155066856835,0.04579312557295291,0.035369958291775805 +national,b1200k.cps2023-2024.acs100.s0,cd,persons_total,436,0.05477220636196029,0.04238993027257421,0.028067183549150776 +national,b1200k.cps2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.12771039208244234,0.10363953902026549,0.09845020440267864 +national,b1200k.cps2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.33040663694763434,0.2795984407836609,0.31361045161538365 +national,b1200k.cps2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.28415269675113664,0.2486487506691609,0.2737845094027156 +national,b1200k.cps2023-2024.acs100.s0,cd,renter,436,0.12760996713134296,0.10585844414901613,0.06823628106225212 +national,b1200k.cps2023-2024.acs100.s0,county,households,850,0.09875519007317685,0.07153968322632057,0.04371191414055543 +national,b1200k.cps2023-2024.acs100.s0,county,owner,850,0.11916817853142374,0.08502419041441511,0.05878768843480771 +national,b1200k.cps2023-2024.acs100.s0,county,persons_0_17,850,0.19333091851489753,0.13191071388475822,0.11046384351569767 +national,b1200k.cps2023-2024.acs100.s0,county,persons_18_64,850,0.11535788997304354,0.08699868292565432,0.06312088019806363 +national,b1200k.cps2023-2024.acs100.s0,county,persons_65p,850,0.1341279383987972,0.09467075364137192,0.07924608197981975 +national,b1200k.cps2023-2024.acs100.s0,county,persons_in_households,850,0.1105630243429041,0.07910748628439666,0.0573049693189195 +national,b1200k.cps2023-2024.acs100.s0,county,persons_male,850,0.10932767132275116,0.07719095120402769,0.06325689573472675 +national,b1200k.cps2023-2024.acs100.s0,county,persons_total,850,0.1049086906186378,0.07923895567681119,0.055813629157630655 +national,b1200k.cps2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.19108554260521526,0.13775591333549236,0.1380272770547855 +national,b1200k.cps2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4107012665361624,0.3155957939084968,0.3929387851111985 +national,b1200k.cps2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3473331795765161,0.29289331798821416,0.3211877374058415 +national,b1200k.cps2023-2024.acs100.s0,county,renter,850,0.19152399654266528,0.14677134622048207,0.11243008690078864 +national,b1200k.cps2023-2024.acs100.s0,national,households,1,0.022335044321972537,0.022335044321972537,0.0037640638990095875 +national,b1200k.cps2023-2024.acs100.s0,national,owner,1,0.05262720939822448,0.05262720939822448,0.004551321624416254 +national,b1200k.cps2023-2024.acs100.s0,national,persons_0_17,1,0.0730075863190053,0.0730075863190053,0.0372720265406491 +national,b1200k.cps2023-2024.acs100.s0,national,persons_18_64,1,0.025874147692737506,0.025874147692737506,0.01944243097417546 +national,b1200k.cps2023-2024.acs100.s0,national,persons_65p,1,0.00017441493489430432,0.00017441493489430432,0.013244079503840643 +national,b1200k.cps2023-2024.acs100.s0,national,persons_in_households,1,0.010120196784705921,0.010120196784705921,0.015085609209046204 +national,b1200k.cps2023-2024.acs100.s0,national,persons_male,1,0.013013453076467299,0.013013453076467299,0.028723425850529456 +national,b1200k.cps2023-2024.acs100.s0,national,persons_total,1,4.3273375532343155e-05,4.3273375532343155e-05,0.017379591291671177 +national,b1200k.cps2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.03367581029213079,0.03367581029213079,0.048095512197352995 +national,b1200k.cps2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.11676025147889355,0.11676025147889355,0.1302302441270425 +national,b1200k.cps2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.22409620157677534,0.22409620157677534,0.23592924971340132 +national,b1200k.cps2023-2024.acs100.s0,national,renter,1,0.0790737882429444,0.0790737882429444,0.04412479300143794 +national,b1200k.cps2023-2024.acs100.s0,state,households,51,0.030287099740628105,0.025795132513818833,0.007366472441886084 +national,b1200k.cps2023-2024.acs100.s0,state,owner,51,0.043673918705645375,0.03470765063293857,0.008502929987951028 +national,b1200k.cps2023-2024.acs100.s0,state,persons_0_17,51,0.07352449829449703,0.06232361692167676,0.040353336543008406 +national,b1200k.cps2023-2024.acs100.s0,state,persons_18_64,51,0.03286616916195553,0.023768854550436105,0.021963235988107524 +national,b1200k.cps2023-2024.acs100.s0,state,persons_65p,51,0.01563423640263269,0.005402072492082809,0.017674882541369112 +national,b1200k.cps2023-2024.acs100.s0,state,persons_in_households,51,0.018252623599814416,0.014782830379937365,0.016703247134444904 +national,b1200k.cps2023-2024.acs100.s0,state,persons_male,51,0.022783537043933384,0.016050508047198018,0.02456790941781729 +national,b1200k.cps2023-2024.acs100.s0,state,persons_total,51,0.017391345003405233,0.012746824442036987,0.017474487339868436 +national,b1200k.cps2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.06075547515551893,0.052271536464875465,0.03822292357876195 +national,b1200k.cps2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.18229976157805441,0.15944663085373467,0.18859795684214398 +national,b1200k.cps2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.21583080030023058,0.1780991008907846,0.21413141669053612 +national,b1200k.cps2023-2024.acs100.s0,state,renter,51,0.1068980167502896,0.09761635433969562,0.05758225115104507 +national,b1200k.cps2024.acs000.s0,cd,households,436,0.055169535662941846,0.043039542955645375,0.04621848016869883 +national,b1200k.cps2024.acs000.s0,cd,owner,436,0.14259065220931866,0.08336236380953341,0.14132672189037712 +national,b1200k.cps2024.acs000.s0,cd,persons_0_17,436,0.14270619498246567,0.10829276493821446,0.12785088140978082 +national,b1200k.cps2024.acs000.s0,cd,persons_18_64,436,0.06339424851770899,0.047166953769845574,0.06359121804798824 +national,b1200k.cps2024.acs000.s0,cd,persons_65p,436,0.1301085683721301,0.09298591450395213,0.13469387628308355 +national,b1200k.cps2024.acs000.s0,cd,persons_in_households,436,0.06657641538100706,0.050243800367610336,0.05774611769762328 +national,b1200k.cps2024.acs000.s0,cd,persons_male,436,0.06385597086545224,0.049676286585176276,0.06364368304459218 +national,b1200k.cps2024.acs000.s0,cd,persons_total,436,0.05599884175845343,0.04182768104234065,0.053907086393193346 +national,b1200k.cps2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.4650116316822513,0.4858672611218112,0.5521107010770457 +national,b1200k.cps2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.32875499081204146,0.2670037005224435,0.3200859517806284 +national,b1200k.cps2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.29210187158299217,0.2576523701561074,0.2843673506925899 +national,b1200k.cps2024.acs000.s0,cd,renter,436,0.2427995902659903,0.17646147459578435,0.22713797865020413 +national,b1200k.cps2024.acs000.s0,county,households,850,0.07662170770303733,0.053959655740135865,0.06359084601637403 +national,b1200k.cps2024.acs000.s0,county,owner,850,0.142299154367238,0.1009224317685189,0.13749341851081417 +national,b1200k.cps2024.acs000.s0,county,persons_0_17,850,0.1907693869629117,0.13990686349456322,0.1592650909236374 +national,b1200k.cps2024.acs000.s0,county,persons_18_64,850,0.1075330110853123,0.07621700517276109,0.09714335564405126 +national,b1200k.cps2024.acs000.s0,county,persons_65p,850,0.16865488087494565,0.12893893916039745,0.15816236579282392 +national,b1200k.cps2024.acs000.s0,county,persons_in_households,850,0.09993165699590395,0.07480864384301597,0.08228200333288341 +national,b1200k.cps2024.acs000.s0,county,persons_male,850,0.09663852447816275,0.069823560538487,0.08637137279811688 +national,b1200k.cps2024.acs000.s0,county,persons_total,850,0.08875859051193895,0.06674606188943213,0.0760483537975984 +national,b1200k.cps2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.46395028241948555,0.4884264176968769,0.5248335872991333 +national,b1200k.cps2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.41248475693670356,0.3228439156729811,0.40502530981820684 +national,b1200k.cps2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.3494971733487631,0.29058806453700936,0.33851544114425125 +national,b1200k.cps2024.acs000.s0,county,renter,850,0.3139457100472231,0.23670929905648425,0.30275767867549086 +national,b1200k.cps2024.acs000.s0,national,households,1,0.04250326672667096,0.04250326672667096,0.042503266232915296 +national,b1200k.cps2024.acs000.s0,national,owner,1,0.03221112082143117,0.03221112082143117,0.04010859549407332 +national,b1200k.cps2024.acs000.s0,national,persons_0_17,1,0.061249956135751474,0.061249956135751474,0.03288093308337006 +national,b1200k.cps2024.acs000.s0,national,persons_18_64,1,0.012245775135804689,0.012245775135804689,0.028643647199660546 +national,b1200k.cps2024.acs000.s0,national,persons_65p,1,0.0007314780723975424,0.0007314780723975424,0.03895423703646453 +national,b1200k.cps2024.acs000.s0,national,persons_in_households,1,0.03101637662862949,0.03101637662862949,0.007468807605125023 +national,b1200k.cps2024.acs000.s0,national,persons_male,1,0.0125128420283637,0.0125128420283637,0.030150509781627526 +national,b1200k.cps2024.acs000.s0,national,persons_total,1,0.005587196091569418,0.005587196091569418,0.017379591290167525 +national,b1200k.cps2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5383018389765677,0.5383018389765677,0.6395411932654765 +national,b1200k.cps2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.08331158983300037,0.08331158983300037,0.09886944608007787 +national,b1200k.cps2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.19471239761338116,0.19471239761338116,0.20837958115855362 +national,b1200k.cps2024.acs000.s0,national,renter,1,0.02740184073425515,0.02740184073425515,0.012242781550688111 +national,b1200k.cps2024.acs000.s0,state,households,51,0.04118377294367497,0.035658364573447156,0.041131832400175525 +national,b1200k.cps2024.acs000.s0,state,owner,51,0.039144380565679836,0.03387803060825271,0.047374454375478325 +national,b1200k.cps2024.acs000.s0,state,persons_0_17,51,0.06907169122021105,0.06662553597565796,0.05938231280038761 +national,b1200k.cps2024.acs000.s0,state,persons_18_64,51,0.024733522135451578,0.019017944286636532,0.03622043144079596 +national,b1200k.cps2024.acs000.s0,state,persons_65p,51,0.02754920807887612,0.0083713026181811,0.05328853265489556 +national,b1200k.cps2024.acs000.s0,state,persons_in_households,51,0.031243486304423567,0.027058692012996186,0.01986143555982169 +national,b1200k.cps2024.acs000.s0,state,persons_male,51,0.029289163967116293,0.030123536134824,0.03069101486431141 +national,b1200k.cps2024.acs000.s0,state,persons_total,51,0.016283233735506525,0.011704086385007934,0.01840903075160598 +national,b1200k.cps2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4508023505978031,0.43863817276804584,0.5260015221555049 +national,b1200k.cps2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.12913820196157644,0.12460120576816643,0.12759779821473768 +national,b1200k.cps2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.20255485189735234,0.20979147770985293,0.2025211568796707 +national,b1200k.cps2024.acs000.s0,state,renter,51,0.08493612416544927,0.07221511362688111,0.07151289876278223 +national,b1200k.cps2024.acs100.s0,cd,households,436,0.06262363862536353,0.049036069854394806,0.01853937197230943 +national,b1200k.cps2024.acs100.s0,cd,owner,436,0.0794514885173841,0.05993226698951952,0.031085600049497085 +national,b1200k.cps2024.acs100.s0,cd,persons_0_17,436,0.1135518794465619,0.09137292503389886,0.06602954734043533 +national,b1200k.cps2024.acs100.s0,cd,persons_18_64,436,0.06803393623142556,0.05717122334624765,0.030278548769655505 +national,b1200k.cps2024.acs100.s0,cd,persons_65p,436,0.08174951586019577,0.06777265396626198,0.03688986989816291 +national,b1200k.cps2024.acs100.s0,cd,persons_in_households,436,0.0613118154108841,0.046196598008814954,0.02888468595689312 +national,b1200k.cps2024.acs100.s0,cd,persons_male,436,0.06276194304163635,0.049834670373237785,0.0358491426487685 +national,b1200k.cps2024.acs100.s0,cd,persons_total,436,0.05922110998868545,0.043849769128637625,0.02858447871974891 +national,b1200k.cps2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.1357690584539675,0.0995150716726972,0.09657477627699504 +national,b1200k.cps2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.33456699967323467,0.2816917629099509,0.3160250987957435 +national,b1200k.cps2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2896256146553156,0.2529405620745145,0.27600633235071437 +national,b1200k.cps2024.acs100.s0,cd,renter,436,0.12945606025923403,0.11327264872304191,0.06636123665010386 +national,b1200k.cps2024.acs100.s0,county,households,850,0.10090632571183125,0.0699970335869354,0.04220600709712167 +national,b1200k.cps2024.acs100.s0,county,owner,850,0.12276552085223667,0.08723018661945281,0.055121571185418446 +national,b1200k.cps2024.acs100.s0,county,persons_0_17,850,0.19836087150307555,0.1355115062915263,0.11295370503489499 +national,b1200k.cps2024.acs100.s0,county,persons_18_64,850,0.11933554600971708,0.0903656140690727,0.06288397767703105 +national,b1200k.cps2024.acs100.s0,county,persons_65p,850,0.13970574756225812,0.10451405626321136,0.07549011338819409 +national,b1200k.cps2024.acs100.s0,county,persons_in_households,850,0.11504758266426654,0.08297695546391323,0.058172003679532666 +national,b1200k.cps2024.acs100.s0,county,persons_male,850,0.11439236880461458,0.08563567057483884,0.06346029685686085 +national,b1200k.cps2024.acs100.s0,county,persons_total,850,0.1099454621807808,0.08157820829801396,0.055873629804155465 +national,b1200k.cps2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.1995780113837796,0.13702030686790045,0.1371770062939914 +national,b1200k.cps2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.41045214723557344,0.31133926167130577,0.39405333793325886 +national,b1200k.cps2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.35066483299272394,0.28899577952246236,0.3227460175817711 +national,b1200k.cps2024.acs100.s0,county,renter,850,0.19997358386020894,0.15980001969299543,0.11310100408398117 +national,b1200k.cps2024.acs100.s0,national,households,1,0.01704968888114782,0.01704968888114782,0.0019178984047857172 +national,b1200k.cps2024.acs100.s0,national,owner,1,0.05270326448773421,0.05270326448773421,0.002702343456393556 +national,b1200k.cps2024.acs100.s0,national,persons_0_17,1,0.07334820244201261,0.07334820244201261,0.03753367808220693 +national,b1200k.cps2024.acs100.s0,national,persons_18_64,1,0.027663220800814636,0.027663220800814636,0.019149152886607755 +national,b1200k.cps2024.acs100.s0,national,persons_65p,1,0.00031530530749838547,0.00031530530749838547,0.012569504039505151 +national,b1200k.cps2024.acs100.s0,national,persons_in_households,1,0.0064963543885146365,0.0064963543885146365,0.01627147507773764 +national,b1200k.cps2024.acs100.s0,national,persons_male,1,0.014656529883487581,0.014656529883487581,0.028829333555351742 +national,b1200k.cps2024.acs100.s0,national,persons_total,1,0.001078886007474784,0.001078886007474784,0.01737959129184257 +national,b1200k.cps2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.05074892931966607,0.05074892931966607,0.014576211930611994 +national,b1200k.cps2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.12261789518039644,0.12261789518039644,0.13006231605995777 +national,b1200k.cps2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.22924199353803618,0.22924199353803618,0.23578172915023476 +national,b1200k.cps2024.acs100.s0,national,renter,1,0.09461895813976734,0.09461895813976734,0.046599562576231456 +national,b1200k.cps2024.acs100.s0,state,households,51,0.029565818901974808,0.021760378182019036,0.007309502108102353 +national,b1200k.cps2024.acs100.s0,state,owner,51,0.04441526094454657,0.03813762589906756,0.007956445746875313 +national,b1200k.cps2024.acs100.s0,state,persons_0_17,51,0.07331528138336124,0.0618564083770685,0.03983615145369346 +national,b1200k.cps2024.acs100.s0,state,persons_18_64,51,0.034432848850160916,0.02408787499508754,0.02119995268528968 +national,b1200k.cps2024.acs100.s0,state,persons_65p,51,0.015217891372621372,0.00507252274702544,0.01696312975849606 +national,b1200k.cps2024.acs100.s0,state,persons_in_households,51,0.0180685593973131,0.013778808497615347,0.017392141152719524 +national,b1200k.cps2024.acs100.s0,state,persons_male,51,0.023973224094779377,0.01689422096641045,0.025028450815249407 +national,b1200k.cps2024.acs100.s0,state,persons_total,51,0.01783954995900191,0.015697937444977376,0.017679885233477 +national,b1200k.cps2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.048568055567260925,0.03970207134748634,0.016998214718637855 +national,b1200k.cps2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.19298233319146876,0.15927225549867263,0.19275625998480928 +national,b1200k.cps2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.22151264593167036,0.17329217722002974,0.21524820360835026 +national,b1200k.cps2024.acs100.s0,state,renter,51,0.11822177568694701,0.1269152137534808,0.059164123927165455 +national,b300k.cps0.acs100.s0,cd,households,436,0.0845335105561694,0.06910202078150753,0.04322853287263069 +national,b300k.cps0.acs100.s0,cd,owner,436,0.10721676977824497,0.08869571646671182,0.05213620225582097 +national,b300k.cps0.acs100.s0,cd,persons_0_17,436,0.1675867019655133,0.13376465538043458,0.10494720762950266 +national,b300k.cps0.acs100.s0,cd,persons_18_64,436,0.09071648725470326,0.07523913491930923,0.05613597472362423 +national,b300k.cps0.acs100.s0,cd,persons_65p,436,0.13130381624558535,0.10028130431970654,0.0744767392215725 +national,b300k.cps0.acs100.s0,cd,persons_in_households,436,0.09205951237839904,0.07660834684613058,0.055663112724777385 +national,b300k.cps0.acs100.s0,cd,persons_male,436,0.09344985236148108,0.0799353750684908,0.06214293608612152 +national,b300k.cps0.acs100.s0,cd,persons_total,436,0.08976044048391717,0.07671485339919284,0.05440944235155279 +national,b300k.cps0.acs100.s0,cd,real_estate_taxes_aggregate,436,0.21397786207495592,0.15824280198541985,0.12557570281482808 +national,b300k.cps0.acs100.s0,cd,rent_contract_annual_aggregate,436,0.355952488100436,0.3235475543476001,0.33380481079299806 +national,b300k.cps0.acs100.s0,cd,rent_gross_annual_aggregate,436,0.31505230242351967,0.28161930945751157,0.2927730536848693 +national,b300k.cps0.acs100.s0,cd,renter,436,0.17526970593164212,0.15342245772447938,0.09526001317840402 +national,b300k.cps0.acs100.s0,county,households,850,0.1690072868522918,0.11888416851310193,0.09540659716234932 +national,b300k.cps0.acs100.s0,county,owner,850,0.20001340373803794,0.14950828104303937,0.11321934454813151 +national,b300k.cps0.acs100.s0,county,persons_0_17,850,0.31872153671045383,0.23291580389286176,0.21053173939356262 +national,b300k.cps0.acs100.s0,county,persons_18_64,850,0.1937377182528812,0.14573230539242615,0.11934210248312367 +national,b300k.cps0.acs100.s0,county,persons_65p,850,0.2559241711703252,0.19776693440190335,0.15262937809432847 +national,b300k.cps0.acs100.s0,county,persons_in_households,850,0.18962914888224097,0.13455889290283973,0.11398849291446916 +national,b300k.cps0.acs100.s0,county,persons_male,850,0.1934967511557184,0.14190404288616315,0.12052437142125733 +national,b300k.cps0.acs100.s0,county,persons_total,850,0.18433924012190447,0.13226012318484737,0.11074687174432955 +national,b300k.cps0.acs100.s0,county,real_estate_taxes_aggregate,850,0.3014989199127125,0.21295653421487493,0.19720544801317863 +national,b300k.cps0.acs100.s0,county,rent_contract_annual_aggregate,850,0.4357071015508361,0.37095242018349367,0.4110532876094806 +national,b300k.cps0.acs100.s0,county,rent_gross_annual_aggregate,850,0.39645367551871646,0.34681976103486245,0.3504890761247458 +national,b300k.cps0.acs100.s0,county,renter,850,0.3164834341851743,0.26130018443253544,0.20812164238219566 +national,b300k.cps0.acs100.s0,national,households,1,0.015286280408521574,0.015286280408521574,0.002684358353721325 +national,b300k.cps0.acs100.s0,national,owner,1,0.05579996008612873,0.05579996008612873,0.003712530185146309 +national,b300k.cps0.acs100.s0,national,persons_0_17,1,0.0743151786344502,0.0743151786344502,0.04130804089676926 +national,b300k.cps0.acs100.s0,national,persons_18_64,1,0.028706285452182522,0.028706285452182522,0.01854102618658787 +national,b300k.cps0.acs100.s0,national,persons_65p,1,0.00026974544418863385,0.00026974544418863385,0.015019101065131464 +national,b300k.cps0.acs100.s0,national,persons_in_households,1,0.003842559901045321,0.003842559901045321,0.017586017401617055 +national,b300k.cps0.acs100.s0,national,persons_male,1,0.014521141473508463,0.014521141473508463,0.028762420524748044 +national,b300k.cps0.acs100.s0,national,persons_total,1,0.0013977597572643616,0.0013977597572643616,0.017379591291668196 +national,b300k.cps0.acs100.s0,national,real_estate_taxes_aggregate,1,0.15517037594367142,0.15517037594367142,0.019553269229985203 +national,b300k.cps0.acs100.s0,national,rent_contract_annual_aggregate,1,0.12863715457593394,0.12863715457593394,0.12783482357053205 +national,b300k.cps0.acs100.s0,national,rent_gross_annual_aggregate,1,0.2345297608022612,0.2345297608022612,0.2338249332899958 +national,b300k.cps0.acs100.s0,national,renter,1,0.10581319188442433,0.10581319188442433,0.04561075648522626 +national,b300k.cps0.acs100.s0,state,households,51,0.029932645749835823,0.023676946322072987,0.019712368503882405 +national,b300k.cps0.acs100.s0,state,owner,51,0.051332620012457586,0.04425371688550767,0.021826389522271242 +national,b300k.cps0.acs100.s0,state,persons_0_17,51,0.0692719110464748,0.05204401803653414,0.06665709446074423 +national,b300k.cps0.acs100.s0,state,persons_18_64,51,0.03322461926138067,0.02059313709127734,0.029220181226598585 +national,b300k.cps0.acs100.s0,state,persons_65p,51,0.01652391042094501,0.0070074312564463465,0.03404049733309985 +national,b300k.cps0.acs100.s0,state,persons_in_households,51,0.019202448617101683,0.013461663174987487,0.02891261494934966 +national,b300k.cps0.acs100.s0,state,persons_male,51,0.029085368693816,0.0211821262240152,0.03837719133159759 +national,b300k.cps0.acs100.s0,state,persons_total,51,0.018673730344351547,0.014299252687835783,0.027728537498343205 +national,b300k.cps0.acs100.s0,state,real_estate_taxes_aggregate,51,0.12482175933699798,0.12012193257291583,0.04023456724448698 +national,b300k.cps0.acs100.s0,state,rent_contract_annual_aggregate,51,0.21075985267497366,0.1653281161580419,0.20541271712243428 +national,b300k.cps0.acs100.s0,state,rent_gross_annual_aggregate,51,0.24070745908576754,0.20232006711507555,0.2238207675554527 +national,b300k.cps0.acs100.s0,state,renter,51,0.1414677685115681,0.13037552937027802,0.062139979965687715 +national,b300k.cps2022-2023-2024.acs000.s0,cd,households,436,0.0768138963366542,0.056618448340729176,0.05903095626619854 +national,b300k.cps2022-2023-2024.acs000.s0,cd,owner,436,0.15043087127409258,0.083359180492564,0.14579026036401566 +national,b300k.cps2022-2023-2024.acs000.s0,cd,persons_0_17,436,0.15282008843476197,0.11447689514255237,0.11811895800745933 +national,b300k.cps2022-2023-2024.acs000.s0,cd,persons_18_64,436,0.06729213107904793,0.053969611978042266,0.055343312515888345 +national,b300k.cps2022-2023-2024.acs000.s0,cd,persons_65p,436,0.15229457137525998,0.11641841157008576,0.13779353565170702 +national,b300k.cps2022-2023-2024.acs000.s0,cd,persons_in_households,436,0.06606069672053924,0.051526401823702536,0.046662176058902334 +national,b300k.cps2022-2023-2024.acs000.s0,cd,persons_male,436,0.0657796423034446,0.05347162106825168,0.05510136386003589 +national,b300k.cps2022-2023-2024.acs000.s0,cd,persons_total,436,0.05860127209690081,0.04285777227656368,0.04517911961156129 +national,b300k.cps2022-2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.4785779468807137,0.4986868616417639,0.5783161755374594 +national,b300k.cps2022-2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.33062594832243863,0.26822611996172735,0.3109979078913162 +national,b300k.cps2022-2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.30271762596972607,0.2739714411930478,0.2851390393194523 +national,b300k.cps2022-2023-2024.acs000.s0,cd,renter,436,0.2538136391541166,0.19841918202129638,0.23258087301847485 +national,b300k.cps2022-2023-2024.acs000.s0,county,households,850,0.1211894431616476,0.08866673730419428,0.09016678093400855 +national,b300k.cps2022-2023-2024.acs000.s0,county,owner,850,0.1736439436366973,0.12905063767166747,0.15121786449626848 +national,b300k.cps2022-2023-2024.acs000.s0,county,persons_0_17,850,0.2407314470280536,0.1721611539594431,0.17027315603983867 +national,b300k.cps2022-2023-2024.acs000.s0,county,persons_18_64,850,0.13776297574322197,0.0992688391346703,0.10153917823357125 +national,b300k.cps2022-2023-2024.acs000.s0,county,persons_65p,850,0.23563439748017886,0.17764028811650354,0.18187007262415478 +national,b300k.cps2022-2023-2024.acs000.s0,county,persons_in_households,850,0.12331701300663157,0.08649991341973917,0.08501889085740987 +national,b300k.cps2022-2023-2024.acs000.s0,county,persons_male,850,0.1277016874070357,0.09118269047984048,0.09207474532446963 +national,b300k.cps2022-2023-2024.acs000.s0,county,persons_total,850,0.1151701161907757,0.08122595539271901,0.08103649104870823 +national,b300k.cps2022-2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.515699582277813,0.5355857620263584,0.5670911784296876 +national,b300k.cps2022-2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.4199671709466647,0.3307944053714441,0.4047348718273917 +national,b300k.cps2022-2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.38035259849149666,0.32606145751825777,0.3496081604080735 +national,b300k.cps2022-2023-2024.acs000.s0,county,renter,850,0.3420277544291929,0.2595957177846132,0.30806271992692164 +national,b300k.cps2022-2023-2024.acs000.s0,national,households,1,0.04038778050851105,0.04038778050851105,0.04038778011161412 +national,b300k.cps2022-2023-2024.acs000.s0,national,owner,1,0.047843569549438865,0.047843569549438865,0.04504294266327352 +national,b300k.cps2022-2023-2024.acs000.s0,national,persons_0_17,1,0.06301887360288629,0.06301887360288629,0.021094263093460124 +national,b300k.cps2022-2023-2024.acs000.s0,national,persons_18_64,1,0.013636826111469597,0.013636826111469597,0.02674863655274084 +national,b300k.cps2022-2023-2024.acs000.s0,national,persons_65p,1,0.0006214121164728521,0.0006214121164728521,0.018547026346138182 +national,b300k.cps2022-2023-2024.acs000.s0,national,persons_in_households,1,0.030562017635848808,0.030562017635848808,0.007468807603606707 +national,b300k.cps2022-2023-2024.acs000.s0,national,persons_male,1,0.007554531556357624,0.007554531556357624,0.03089045646952046 +national,b300k.cps2022-2023-2024.acs000.s0,national,persons_total,1,0.005144043493874172,0.005144043493874172,0.017379591291648393 +national,b300k.cps2022-2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5423659339999485,0.5423659339999485,0.6659411721508932 +national,b300k.cps2022-2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.12094413477526589,0.12094413477526589,0.1311082630902956 +national,b300k.cps2022-2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.22777163732029837,0.22777163732029837,0.23670056718390284 +national,b300k.cps2022-2023-2024.acs000.s0,national,renter,1,0.006947828054783414,0.006947828054783414,0.00224421283630985 +national,b300k.cps2022-2023-2024.acs000.s0,state,households,51,0.038313289696366624,0.029104500813672537,0.038818772971577764 +national,b300k.cps2022-2023-2024.acs000.s0,state,owner,51,0.04267658854838321,0.04486409723657833,0.0493736484367459 +national,b300k.cps2022-2023-2024.acs000.s0,state,persons_0_17,51,0.0704754293604024,0.06848509726673697,0.05125129793589482 +national,b300k.cps2022-2023-2024.acs000.s0,state,persons_18_64,51,0.023990192990126703,0.01816000702459077,0.02908260558133954 +national,b300k.cps2022-2023-2024.acs000.s0,state,persons_65p,51,0.02491032799213648,0.0080003028592416,0.033742093722682526 +national,b300k.cps2022-2023-2024.acs000.s0,state,persons_in_households,51,0.030397483669080603,0.026529127952252835,0.020461498374014835 +national,b300k.cps2022-2023-2024.acs000.s0,state,persons_male,51,0.02149995501596479,0.014900718141809181,0.030540574782717347 +national,b300k.cps2022-2023-2024.acs000.s0,state,persons_total,51,0.01519466724030218,0.010159954097350087,0.017719590215262444 +national,b300k.cps2022-2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.45718076831620963,0.451213781085076,0.5512094530501027 +national,b300k.cps2022-2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.1424587867287291,0.13826466810487256,0.1468564716660885 +national,b300k.cps2022-2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.23077070410211975,0.21108635871992726,0.23190637634799505 +national,b300k.cps2022-2023-2024.acs000.s0,state,renter,51,0.0858778571640012,0.07764572814579952,0.05874007939622599 +national,b300k.cps2022-2023-2024.acs100.s0,cd,households,436,0.08145920949610042,0.060139494789654246,0.054962073532234944 +national,b300k.cps2022-2023-2024.acs100.s0,cd,owner,436,0.12992798498705205,0.08061859332308757,0.10415262407300314 +national,b300k.cps2022-2023-2024.acs100.s0,cd,persons_0_17,436,0.14283979230725324,0.1076335560375353,0.09819552657666308 +national,b300k.cps2022-2023-2024.acs100.s0,cd,persons_18_64,436,0.06943635473195278,0.058012203198901886,0.049531410622278046 +national,b300k.cps2022-2023-2024.acs100.s0,cd,persons_65p,436,0.12401969793890699,0.09615574310117547,0.09944979837866572 +national,b300k.cps2022-2023-2024.acs100.s0,cd,persons_in_households,436,0.06776392618770989,0.05471342140489986,0.04570265304758491 +national,b300k.cps2022-2023-2024.acs100.s0,cd,persons_male,436,0.0662167079076727,0.05469409794430834,0.05434137605234831 +national,b300k.cps2022-2023-2024.acs100.s0,cd,persons_total,436,0.06232438247763969,0.049759819894297126,0.04628623078305049 +national,b300k.cps2022-2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.3105789073772164,0.31600322733129227,0.3120468833971771 +national,b300k.cps2022-2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3339393070141877,0.2825007661132831,0.31339907708977893 +national,b300k.cps2022-2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.29254891484310375,0.27079870238445447,0.2751987054799509 +national,b300k.cps2022-2023-2024.acs100.s0,cd,renter,436,0.20399412671698272,0.15699178718996656,0.15814508010758657 +national,b300k.cps2022-2023-2024.acs100.s0,county,households,850,0.1379401615172095,0.10315744202107657,0.09608167916716849 +national,b300k.cps2022-2023-2024.acs100.s0,county,owner,850,0.1749740995837795,0.12987869227293913,0.13072067032095197 +national,b300k.cps2022-2023-2024.acs100.s0,county,persons_0_17,850,0.25785218635344354,0.1876686456059402,0.1785360378394958 +national,b300k.cps2022-2023-2024.acs100.s0,county,persons_18_64,850,0.15473440401941396,0.1133671715083568,0.10923617451481231 +national,b300k.cps2022-2023-2024.acs100.s0,county,persons_65p,850,0.22554288211551432,0.173304424828488,0.16056855475526624 +national,b300k.cps2022-2023-2024.acs100.s0,county,persons_in_households,850,0.14429567809997665,0.1002204519682654,0.09869100340395388 +national,b300k.cps2022-2023-2024.acs100.s0,county,persons_male,850,0.1517711767235694,0.11016777736568774,0.10897061665601862 +national,b300k.cps2022-2023-2024.acs100.s0,county,persons_total,850,0.13882557645797441,0.10154598940878518,0.09736080084638134 +national,b300k.cps2022-2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.3655167078756583,0.3525284828169726,0.3344464462788473 +national,b300k.cps2022-2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4208201114686061,0.3239089976281856,0.39866580565532195 +national,b300k.cps2022-2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.37880917880867443,0.33049418527371577,0.33975327300886676 +national,b300k.cps2022-2023-2024.acs100.s0,county,renter,850,0.29554646360757464,0.24331776982784126,0.23413376933474014 +national,b300k.cps2022-2023-2024.acs100.s0,national,households,1,0.03637320194662701,0.03637320194662701,0.02283118810246568 +national,b300k.cps2022-2023-2024.acs100.s0,national,owner,1,0.057484858830789215,0.057484858830789215,0.028899582704201544 +national,b300k.cps2022-2023-2024.acs100.s0,national,persons_0_17,1,0.06826575785708888,0.06826575785708888,0.030152749524834207 +national,b300k.cps2022-2023-2024.acs100.s0,national,persons_18_64,1,0.018655002485220513,0.018655002485220513,0.02321466788614161 +national,b300k.cps2022-2023-2024.acs100.s0,national,persons_65p,1,0.0005369246699937184,0.0005369246699937184,0.017450720137209847 +national,b300k.cps2022-2023-2024.acs100.s0,national,persons_in_households,1,0.023216018606196282,0.023216018606196282,0.0033497610583094885 +national,b300k.cps2022-2023-2024.acs100.s0,national,persons_male,1,0.010228706565406134,0.010228706565406134,0.0292731874081316 +national,b300k.cps2022-2023-2024.acs100.s0,national,persons_total,1,0.0032458424521438693,0.0032458424521438693,0.017379591291877446 +national,b300k.cps2022-2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.3177650266783775,0.3177650266783775,0.366073693434801 +national,b300k.cps2022-2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.10508968109182502,0.10508968109182502,0.12904528661128503 +national,b300k.cps2022-2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.21384390042269555,0.21384390042269555,0.23488829448127344 +national,b300k.cps2022-2023-2024.acs100.s0,national,renter,1,0.04059102595718232,0.04059102595718232,0.027006558627955594 +national,b300k.cps2022-2023-2024.acs100.s0,state,households,51,0.03438932087041213,0.023437582340845326,0.029729572260914973 +national,b300k.cps2022-2023-2024.acs100.s0,state,owner,51,0.04846445793511378,0.041457445879855136,0.03673584714925406 +national,b300k.cps2022-2023-2024.acs100.s0,state,persons_0_17,51,0.06952227724423322,0.061851616623102186,0.05180045120449306 +national,b300k.cps2022-2023-2024.acs100.s0,state,persons_18_64,51,0.026695675566768322,0.01669989053043932,0.03150866407221119 +national,b300k.cps2022-2023-2024.acs100.s0,state,persons_65p,51,0.02204159416628123,0.008176928455001141,0.034800252184436976 +national,b300k.cps2022-2023-2024.acs100.s0,state,persons_in_households,51,0.023203525895546022,0.021911908172991084,0.022383242660041925 +national,b300k.cps2022-2023-2024.acs100.s0,state,persons_male,51,0.020663731597097293,0.015823960958668153,0.03616090096195592 +national,b300k.cps2022-2023-2024.acs100.s0,state,persons_total,51,0.015538609928987512,0.011238700913559439,0.02558194529369862 +national,b300k.cps2022-2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.3153963559200001,0.3246938197191959,0.30258258161320495 +national,b300k.cps2022-2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.15473637500596651,0.13768014317799515,0.1534614967585407 +national,b300k.cps2022-2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.2081993706276061,0.21333748576735745,0.20861372659058267 +national,b300k.cps2022-2023-2024.acs100.s0,state,renter,51,0.08796262726156812,0.08360576379567343,0.05765325898984831 +national,b300k.cps2022-2023-2024.acs100.s1,cd,households,436,0.08287589711563108,0.06451852286163551,0.05460589124685475 +national,b300k.cps2022-2023-2024.acs100.s1,cd,owner,436,0.12987448977376106,0.08410938740767138,0.10271980464673341 +national,b300k.cps2022-2023-2024.acs100.s1,cd,persons_0_17,436,0.14974405386016387,0.11455453649689143,0.09835007215083932 +national,b300k.cps2022-2023-2024.acs100.s1,cd,persons_18_64,436,0.07302563639550481,0.059373118539808444,0.05350098165738256 +national,b300k.cps2022-2023-2024.acs100.s1,cd,persons_65p,436,0.12521665713282154,0.09445416857123276,0.09995627300453121 +national,b300k.cps2022-2023-2024.acs100.s1,cd,persons_in_households,436,0.0700548191922489,0.06157237882463698,0.04312719443969352 +national,b300k.cps2022-2023-2024.acs100.s1,cd,persons_male,436,0.06999369958324543,0.05727262180805198,0.05356780667765004 +national,b300k.cps2022-2023-2024.acs100.s1,cd,persons_total,436,0.06391749933471796,0.053166947568752426,0.04381525638626839 +national,b300k.cps2022-2023-2024.acs100.s1,cd,real_estate_taxes_aggregate,436,0.3192345190955145,0.31980625950106234,0.3232398494938278 +national,b300k.cps2022-2023-2024.acs100.s1,cd,rent_contract_annual_aggregate,436,0.3333714950556575,0.26517727526671764,0.31229202196557954 +national,b300k.cps2022-2023-2024.acs100.s1,cd,rent_gross_annual_aggregate,436,0.28884771532916553,0.26593835613294825,0.27677378801964936 +national,b300k.cps2022-2023-2024.acs100.s1,cd,renter,436,0.202764807829374,0.16127731437673998,0.15646844286840492 +national,b300k.cps2022-2023-2024.acs100.s1,county,households,850,0.13476428318108774,0.1010344565035793,0.09421033365906543 +national,b300k.cps2022-2023-2024.acs100.s1,county,owner,850,0.1687578613238559,0.12848114043545078,0.12898361874265155 +national,b300k.cps2022-2023-2024.acs100.s1,county,persons_0_17,850,0.25341463242955614,0.1846821934970258,0.18004659071278442 +national,b300k.cps2022-2023-2024.acs100.s1,county,persons_18_64,850,0.1550779875104846,0.11285379963621728,0.10409935096726328 +national,b300k.cps2022-2023-2024.acs100.s1,county,persons_65p,850,0.21778697605547656,0.16473784109877937,0.15894869564486916 +national,b300k.cps2022-2023-2024.acs100.s1,county,persons_in_households,850,0.14186079841516439,0.0983687140739788,0.09567362504185346 +national,b300k.cps2022-2023-2024.acs100.s1,county,persons_male,850,0.14450819157454184,0.10211505132547075,0.10051269033781333 +national,b300k.cps2022-2023-2024.acs100.s1,county,persons_total,850,0.13746220732564088,0.09252525543990156,0.0933225358182413 +national,b300k.cps2022-2023-2024.acs100.s1,county,real_estate_taxes_aggregate,850,0.37721668705768485,0.37005815100614287,0.34138997462800813 +national,b300k.cps2022-2023-2024.acs100.s1,county,rent_contract_annual_aggregate,850,0.4267213280556424,0.3558945653735257,0.40099376211959503 +national,b300k.cps2022-2023-2024.acs100.s1,county,rent_gross_annual_aggregate,850,0.38369324058202464,0.33513035676801356,0.3395631844898292 +national,b300k.cps2022-2023-2024.acs100.s1,county,renter,850,0.3015722781370127,0.24146578119766274,0.2394566484896744 +national,b300k.cps2022-2023-2024.acs100.s1,national,households,1,0.038731594778362265,0.038731594778362265,0.024794395277488928 +national,b300k.cps2022-2023-2024.acs100.s1,national,owner,1,0.05445142288433735,0.05445142288433735,0.025324766647941036 +national,b300k.cps2022-2023-2024.acs100.s1,national,persons_0_17,1,0.06722014738106916,0.06722014738106916,0.028992087919649804 +national,b300k.cps2022-2023-2024.acs100.s1,national,persons_18_64,1,0.018042891860486635,0.018042891860486635,0.023429146172018255 +national,b300k.cps2022-2023-2024.acs100.s1,national,persons_65p,1,0.0005561248259008758,0.0005561248259008758,0.016789814262298818 +national,b300k.cps2022-2023-2024.acs100.s1,national,persons_in_households,1,0.023531106023115728,0.023531106023115728,0.003339386531063656 +national,b300k.cps2022-2023-2024.acs100.s1,national,persons_male,1,0.00914232086522395,0.00914232086522395,0.030230184394261766 +national,b300k.cps2022-2023-2024.acs100.s1,national,persons_total,1,0.0033888083815028745,0.0033888083815028745,0.017379591291576717 +national,b300k.cps2022-2023-2024.acs100.s1,national,real_estate_taxes_aggregate,1,0.32645441084072935,0.32645441084072935,0.3748400477187738 +national,b300k.cps2022-2023-2024.acs100.s1,national,rent_contract_annual_aggregate,1,0.09967706855194938,0.09967706855194938,0.12851951123017968 +national,b300k.cps2022-2023-2024.acs100.s1,national,rent_gross_annual_aggregate,1,0.20908905709039013,0.20908905709039013,0.23442641409602114 +national,b300k.cps2022-2023-2024.acs100.s1,national,renter,1,0.027863018439444203,0.027863018439444203,0.0163427118127628 +national,b300k.cps2022-2023-2024.acs100.s1,state,households,51,0.03582716493720152,0.02728687105225227,0.02735163381759662 +national,b300k.cps2022-2023-2024.acs100.s1,state,owner,51,0.046478359447618384,0.042399045925081,0.03220854081813725 +national,b300k.cps2022-2023-2024.acs100.s1,state,persons_0_17,51,0.06896301680424324,0.06032405300874398,0.05355871315044963 +national,b300k.cps2022-2023-2024.acs100.s1,state,persons_18_64,51,0.027539596215577996,0.018911131321548594,0.027238197395543753 +national,b300k.cps2022-2023-2024.acs100.s1,state,persons_65p,51,0.02094189624097604,0.007831674770261383,0.028673572469027384 +national,b300k.cps2022-2023-2024.acs100.s1,state,persons_in_households,51,0.024356484111425287,0.023421366352056827,0.021890576690053367 +national,b300k.cps2022-2023-2024.acs100.s1,state,persons_male,51,0.020953233442916226,0.015616320979830126,0.03131112356940419 +national,b300k.cps2022-2023-2024.acs100.s1,state,persons_total,51,0.015085735096732434,0.011216915188135154,0.02182359813314486 +national,b300k.cps2022-2023-2024.acs100.s1,state,real_estate_taxes_aggregate,51,0.3096597932672935,0.33415707307486403,0.3088903056845426 +national,b300k.cps2022-2023-2024.acs100.s1,state,rent_contract_annual_aggregate,51,0.151696030317034,0.13376493571508846,0.16091490576517956 +national,b300k.cps2022-2023-2024.acs100.s1,state,rent_gross_annual_aggregate,51,0.21054030162074974,0.2204503425126953,0.2182614080634859 +national,b300k.cps2022-2023-2024.acs100.s1,state,renter,51,0.09182848698777181,0.08420501956179503,0.05324485130069417 +national,b300k.cps2022-2023-2024.acs100.s2,cd,households,436,0.08141993397842143,0.06145006752367964,0.05387121687949212 +national,b300k.cps2022-2023-2024.acs100.s2,cd,owner,436,0.12819733041158843,0.08207049310855331,0.10084961118595076 +national,b300k.cps2022-2023-2024.acs100.s2,cd,persons_0_17,436,0.1476575468498571,0.1133017189012492,0.10396800122316771 +national,b300k.cps2022-2023-2024.acs100.s2,cd,persons_18_64,436,0.0739302662550068,0.06378033751955045,0.05002635961526946 +national,b300k.cps2022-2023-2024.acs100.s2,cd,persons_65p,436,0.1225863625088895,0.09803792723748411,0.0985697921326312 +national,b300k.cps2022-2023-2024.acs100.s2,cd,persons_in_households,436,0.07144138370253729,0.05906711643667383,0.045753838452251526 +national,b300k.cps2022-2023-2024.acs100.s2,cd,persons_male,436,0.07458805259344883,0.06370848429482842,0.05523679661015942 +national,b300k.cps2022-2023-2024.acs100.s2,cd,persons_total,436,0.06752779744494047,0.05595610763609438,0.046462729275332286 +national,b300k.cps2022-2023-2024.acs100.s2,cd,real_estate_taxes_aggregate,436,0.3105978299822275,0.32255659949570764,0.31624422336631874 +national,b300k.cps2022-2023-2024.acs100.s2,cd,rent_contract_annual_aggregate,436,0.33063035625989223,0.27776242745647034,0.31155462308682835 +national,b300k.cps2022-2023-2024.acs100.s2,cd,rent_gross_annual_aggregate,436,0.29262338905266905,0.25946079149807494,0.27553400138773404 +national,b300k.cps2022-2023-2024.acs100.s2,cd,renter,436,0.20104729062660023,0.1606960957004242,0.15632248233515425 +national,b300k.cps2022-2023-2024.acs100.s2,county,households,850,0.14054874402992476,0.1066271722065818,0.09378508463464962 +national,b300k.cps2022-2023-2024.acs100.s2,county,owner,850,0.17677175887833654,0.138083415479833,0.12610930452147198 +national,b300k.cps2022-2023-2024.acs100.s2,county,persons_0_17,850,0.24335012621601448,0.18366150785433416,0.18145174594691854 +national,b300k.cps2022-2023-2024.acs100.s2,county,persons_18_64,850,0.15688731687777235,0.11057050117948719,0.11049728350658153 +national,b300k.cps2022-2023-2024.acs100.s2,county,persons_65p,850,0.21941859326747395,0.16395904255873478,0.15756992656357788 +national,b300k.cps2022-2023-2024.acs100.s2,county,persons_in_households,850,0.14745371657300715,0.10574667594812115,0.0990745995105983 +national,b300k.cps2022-2023-2024.acs100.s2,county,persons_male,850,0.15064345959263106,0.11128991199515662,0.10514594684137929 +national,b300k.cps2022-2023-2024.acs100.s2,county,persons_total,850,0.14140300830808344,0.10259129172389206,0.09693953272037091 +national,b300k.cps2022-2023-2024.acs100.s2,county,real_estate_taxes_aggregate,850,0.37712118679820433,0.3660102410452892,0.33610850282071913 +national,b300k.cps2022-2023-2024.acs100.s2,county,rent_contract_annual_aggregate,850,0.42584477022049494,0.35175349247157905,0.4034052375814544 +national,b300k.cps2022-2023-2024.acs100.s2,county,rent_gross_annual_aggregate,850,0.38534448956040024,0.34449625318474475,0.34459933569726914 +national,b300k.cps2022-2023-2024.acs100.s2,county,renter,850,0.2979129242328524,0.24234967569903426,0.23085167418015046 +national,b300k.cps2022-2023-2024.acs100.s2,national,households,1,0.03622298898580318,0.03622298898580318,0.022425462343745668 +national,b300k.cps2022-2023-2024.acs100.s2,national,owner,1,0.05480525374959647,0.05480525374959647,0.02487343325459565 +national,b300k.cps2022-2023-2024.acs100.s2,national,persons_0_17,1,0.06315442777053781,0.06315442777053781,0.02493795042771259 +national,b300k.cps2022-2023-2024.acs100.s2,national,persons_18_64,1,0.01819612101382591,0.01819612101382591,0.024373101349739155 +national,b300k.cps2022-2023-2024.acs100.s2,national,persons_65p,1,0.0007070678972486736,0.0007070678972486736,0.015136287219120487 +national,b300k.cps2022-2023-2024.acs100.s2,national,persons_in_households,1,0.02258615071654198,0.02258615071654198,0.0032116078586647066 +national,b300k.cps2022-2023-2024.acs100.s2,national,persons_male,1,0.009434157820751538,0.009434157820751538,0.028793888062225634 +national,b300k.cps2022-2023-2024.acs100.s2,national,persons_total,1,0.0023970434739663993,0.0023970434739663993,0.017379591291621404 +national,b300k.cps2022-2023-2024.acs100.s2,national,real_estate_taxes_aggregate,1,0.32388849047574314,0.32388849047574314,0.36958236939275463 +national,b300k.cps2022-2023-2024.acs100.s2,national,rent_contract_annual_aggregate,1,0.1070254914023418,0.1070254914023418,0.1319312994116549 +national,b300k.cps2022-2023-2024.acs100.s2,national,rent_gross_annual_aggregate,1,0.21554446085996273,0.21554446085996273,0.23742358379298573 +national,b300k.cps2022-2023-2024.acs100.s2,national,renter,1,0.03787951532990728,0.03787951532990728,0.022082308540014823 +national,b300k.cps2022-2023-2024.acs100.s2,state,households,51,0.03534972909746922,0.028576687302064658,0.023725680491648735 +national,b300k.cps2022-2023-2024.acs100.s2,state,owner,51,0.04469837441325257,0.03186143373820745,0.029002895268317442 +national,b300k.cps2022-2023-2024.acs100.s2,state,persons_0_17,51,0.06766924094823157,0.05490332197751628,0.05567407681743994 +national,b300k.cps2022-2023-2024.acs100.s2,state,persons_18_64,51,0.02595315210345113,0.017066582528234196,0.029783437644543102 +national,b300k.cps2022-2023-2024.acs100.s2,state,persons_65p,51,0.02432752611106001,0.007677537585413598,0.029325220378664408 +national,b300k.cps2022-2023-2024.acs100.s2,state,persons_in_households,51,0.0228657035741335,0.022983894751011903,0.022200252461611364 +national,b300k.cps2022-2023-2024.acs100.s2,state,persons_male,51,0.020431863979743278,0.01269889931006266,0.032881620970388825 +national,b300k.cps2022-2023-2024.acs100.s2,state,persons_total,51,0.013999615895199028,0.011700764039253731,0.025249273649564613 +national,b300k.cps2022-2023-2024.acs100.s2,state,real_estate_taxes_aggregate,51,0.31591962536590174,0.31843321374142297,0.30670737513987084 +national,b300k.cps2022-2023-2024.acs100.s2,state,rent_contract_annual_aggregate,51,0.15221782764048242,0.13024632009286127,0.16133794028836196 +national,b300k.cps2022-2023-2024.acs100.s2,state,rent_gross_annual_aggregate,51,0.2119161267608786,0.1961121659278051,0.21528276283846245 +national,b300k.cps2022-2023-2024.acs100.s2,state,renter,51,0.08542468235741517,0.07084438461011466,0.05241661969934416 +national,b300k.cps2023-2024.acs000.s0,cd,households,436,0.06659889923483614,0.051311160694353146,0.053614520750817074 +national,b300k.cps2023-2024.acs000.s0,cd,owner,436,0.14791701351081213,0.08916555842401622,0.1444815335505615 +national,b300k.cps2023-2024.acs000.s0,cd,persons_0_17,436,0.1543914354506224,0.11299528451525888,0.12478861103159995 +national,b300k.cps2023-2024.acs000.s0,cd,persons_18_64,436,0.0677764113520785,0.05483046523633475,0.058743708228535384 +national,b300k.cps2023-2024.acs000.s0,cd,persons_65p,436,0.1511188999139415,0.11960451167110006,0.13699227201391515 +national,b300k.cps2023-2024.acs000.s0,cd,persons_in_households,436,0.06896617849794623,0.05612577873155741,0.0511102742236791 +national,b300k.cps2023-2024.acs000.s0,cd,persons_male,436,0.06726033016483961,0.05498153562468454,0.05884683651812112 +national,b300k.cps2023-2024.acs000.s0,cd,persons_total,436,0.0608741726701753,0.04609898058317008,0.04886493140741495 +national,b300k.cps2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.4688395506933809,0.4799024758012721,0.5698652645724244 +national,b300k.cps2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.33647046003690545,0.2724058027700966,0.31469264573928035 +national,b300k.cps2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.307788953906389,0.27659623129080335,0.2838529241053794 +national,b300k.cps2023-2024.acs000.s0,cd,renter,436,0.25028549451040044,0.19101227574221857,0.22968050589278796 +national,b300k.cps2023-2024.acs000.s0,county,households,850,0.11617686438961268,0.08114939956723048,0.08498367212326344 +national,b300k.cps2023-2024.acs000.s0,county,owner,850,0.17370158782088552,0.12817272686087883,0.15082548224521902 +national,b300k.cps2023-2024.acs000.s0,county,persons_0_17,850,0.23995037520519888,0.16948172196743988,0.1761961413648731 +national,b300k.cps2023-2024.acs000.s0,county,persons_18_64,850,0.13838075805944242,0.09463916326384954,0.10700797062471092 +national,b300k.cps2023-2024.acs000.s0,county,persons_65p,850,0.22897294207402644,0.18029957194224444,0.18115346083985567 +national,b300k.cps2023-2024.acs000.s0,county,persons_in_households,850,0.12713312999793547,0.08527523162796746,0.08877408961987057 +national,b300k.cps2023-2024.acs000.s0,county,persons_male,850,0.12793613627333555,0.09277973243724809,0.09538987885247817 +national,b300k.cps2023-2024.acs000.s0,county,persons_total,850,0.11868086905453715,0.08173662813252805,0.08495552849814238 +national,b300k.cps2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5077095040562315,0.53343373313728,0.5565735457281109 +national,b300k.cps2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.4243566774620468,0.347182897524689,0.40679322886452596 +national,b300k.cps2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.3769364279446927,0.3282559589386741,0.3478483126845342 +national,b300k.cps2023-2024.acs000.s0,county,renter,850,0.33524706027076234,0.2536655526101482,0.3152559717195768 +national,b300k.cps2023-2024.acs000.s0,national,households,1,0.040631761105864236,0.040631761105864236,0.04063176077374351 +national,b300k.cps2023-2024.acs000.s0,national,owner,1,0.0392446082526435,0.0392446082526435,0.042345165727939324 +national,b300k.cps2023-2024.acs000.s0,national,persons_0_17,1,0.06569901803100475,0.06569901803100475,0.027390231881220944 +national,b300k.cps2023-2024.acs000.s0,national,persons_18_64,1,0.01406179214628397,0.01406179214628397,0.0268050150704322 +national,b300k.cps2023-2024.acs000.s0,national,persons_65p,1,0.0005051204167362431,0.0005051204167362431,0.026233676447505128 +national,b300k.cps2023-2024.acs000.s0,national,persons_in_households,1,0.0309088963030605,0.0309088963030605,0.007468807603602755 +national,b300k.cps2023-2024.acs000.s0,national,persons_male,1,0.008127402438907076,0.008127402438907076,0.030408793666099887 +national,b300k.cps2023-2024.acs000.s0,national,persons_total,1,0.005482366680830717,0.005482366680830717,0.017379591291652247 +national,b300k.cps2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5381625114329095,0.5381625114329095,0.6562268648260717 +national,b300k.cps2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.10978734361116428,0.10978734361116428,0.1222749686343984 +national,b300k.cps2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.21797067822970526,0.21797067822970526,0.22894074123359048 +national,b300k.cps2023-2024.acs000.s0,national,renter,1,0.007375939804224396,0.007375939804224396,0.0025205865935754137 +national,b300k.cps2023-2024.acs000.s0,state,households,51,0.03875452190987316,0.03181887519552718,0.04016948176038674 +national,b300k.cps2023-2024.acs000.s0,state,owner,51,0.03714970471491217,0.03382802406109517,0.04757532621275756 +national,b300k.cps2023-2024.acs000.s0,state,persons_0_17,51,0.07138750113934637,0.06548445498460775,0.05483953711216335 +national,b300k.cps2023-2024.acs000.s0,state,persons_18_64,51,0.024236911251203638,0.019473020495144204,0.03073725927409018 +national,b300k.cps2023-2024.acs000.s0,state,persons_65p,51,0.02363361982948631,0.009000253497431615,0.039588997541003985 +national,b300k.cps2023-2024.acs000.s0,state,persons_in_households,51,0.030977514738353036,0.027827512117769345,0.01955854451458431 +national,b300k.cps2023-2024.acs000.s0,state,persons_male,51,0.02380948902352055,0.018787251109654627,0.031232583282333352 +national,b300k.cps2023-2024.acs000.s0,state,persons_total,51,0.01447806205206007,0.010800827824127349,0.018964847449261527 +national,b300k.cps2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.45137187585806465,0.44442876777037893,0.5416227019420784 +national,b300k.cps2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.13914983315567697,0.1232397328882248,0.14160292476457162 +national,b300k.cps2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2210850571814336,0.21702269016447423,0.2199685049241719 +national,b300k.cps2023-2024.acs000.s0,state,renter,51,0.07604324701499145,0.06528083210475862,0.06435477021533259 +national,b300k.cps2023-2024.acs100.s0,cd,households,436,0.07961824129945907,0.0616681821545923,0.04810264997891757 +national,b300k.cps2023-2024.acs100.s0,cd,owner,436,0.12445454145347881,0.07972488458953067,0.08310383827346488 +national,b300k.cps2023-2024.acs100.s0,cd,persons_0_17,436,0.1444030482368346,0.11229628622420793,0.10115797654787498 +national,b300k.cps2023-2024.acs100.s0,cd,persons_18_64,436,0.07535532479122792,0.06285717880494338,0.050864185115396025 +national,b300k.cps2023-2024.acs100.s0,cd,persons_65p,436,0.12097081218856884,0.09737025702265684,0.08461932860175533 +national,b300k.cps2023-2024.acs100.s0,cd,persons_in_households,436,0.0704768301988397,0.06044381136349781,0.04836032333640076 +national,b300k.cps2023-2024.acs100.s0,cd,persons_male,436,0.07030458718615719,0.0595905185978135,0.055839076005064214 +national,b300k.cps2023-2024.acs100.s0,cd,persons_total,436,0.06634769936563761,0.05426985748258721,0.0485463192051605 +national,b300k.cps2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.25183324188363093,0.25567419546934844,0.2102526769439945 +national,b300k.cps2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.33960569110906974,0.2905279255006018,0.3202053889884849 +national,b300k.cps2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2868448502891181,0.25861594264509885,0.27860549586486605 +national,b300k.cps2023-2024.acs100.s0,cd,renter,436,0.18543935109762338,0.1560607398091599,0.12801205780457262 +national,b300k.cps2023-2024.acs100.s0,county,households,850,0.14196346577140373,0.10100760457919018,0.09369935551642367 +national,b300k.cps2023-2024.acs100.s0,county,owner,850,0.17360733137128886,0.12365838853235137,0.11978550005293273 +national,b300k.cps2023-2024.acs100.s0,county,persons_0_17,850,0.27580389666721083,0.2017430120662784,0.19000776698181512 +national,b300k.cps2023-2024.acs100.s0,county,persons_18_64,850,0.1621963712949039,0.12138495621749865,0.11135210001064201 +national,b300k.cps2023-2024.acs100.s0,county,persons_65p,850,0.21882682325865213,0.16380830564079968,0.15311411284075127 +national,b300k.cps2023-2024.acs100.s0,county,persons_in_households,850,0.15396977108032836,0.10577262572585516,0.10472957916788693 +national,b300k.cps2023-2024.acs100.s0,county,persons_male,850,0.16118398373624968,0.11804835601267216,0.11200379817229747 +national,b300k.cps2023-2024.acs100.s0,county,persons_total,850,0.14863649799586695,0.10358054666477248,0.10265556765772516 +national,b300k.cps2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.32375312424283825,0.296007989645402,0.24968300885360645 +national,b300k.cps2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.42508473949547565,0.34149317305755333,0.4031064691966803 +national,b300k.cps2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3786310986704824,0.32603580054692594,0.3395014437392735 +national,b300k.cps2023-2024.acs100.s0,county,renter,850,0.28467770833676814,0.2261159140106025,0.21072750235659535 +national,b300k.cps2023-2024.acs100.s0,national,households,1,0.034882399020032546,0.034882399020032546,0.01622813986048555 +national,b300k.cps2023-2024.acs100.s0,national,owner,1,0.05363313991248341,0.05363313991248341,0.0185637728817818 +national,b300k.cps2023-2024.acs100.s0,national,persons_0_17,1,0.07178102244750267,0.07178102244750267,0.037168881908996844 +national,b300k.cps2023-2024.acs100.s0,national,persons_18_64,1,0.020186245213107676,0.020186245213107676,0.021405258145536843 +national,b300k.cps2023-2024.acs100.s0,national,persons_65p,1,0.0006120076998306613,0.0006120076998306613,0.019721236033055835 +national,b300k.cps2023-2024.acs100.s0,national,persons_in_households,1,0.020333508837103394,0.020333508837103394,0.008086271457001712 +national,b300k.cps2023-2024.acs100.s0,national,persons_male,1,0.010969830695297103,0.010969830695297103,0.028695428893634082 +national,b300k.cps2023-2024.acs100.s0,national,persons_total,1,0.003058929172514386,0.003058929172514386,0.017379591291705 +national,b300k.cps2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.23753767895848144,0.23753767895848144,0.2345658564217346 +national,b300k.cps2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.09690855532197688,0.09690855532197688,0.1242698815104491 +national,b300k.cps2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.20665698818190026,0.20665698818190026,0.23069322178107815 +national,b300k.cps2023-2024.acs100.s0,national,renter,1,0.041560062177077105,0.041560062177077105,0.029848196630025862 +national,b300k.cps2023-2024.acs100.s0,state,households,51,0.03370761774420467,0.02574402369139925,0.025384052373917356 +national,b300k.cps2023-2024.acs100.s0,state,owner,51,0.046291804301377346,0.040212461714923396,0.028873511573039103 +national,b300k.cps2023-2024.acs100.s0,state,persons_0_17,51,0.0711226611541805,0.06087086387381244,0.057898369342281576 +national,b300k.cps2023-2024.acs100.s0,state,persons_18_64,51,0.02799674999962056,0.019706871092281576,0.03114044991340005 +national,b300k.cps2023-2024.acs100.s0,state,persons_65p,51,0.021392302116394,0.005845414174498385,0.03431761949732328 +national,b300k.cps2023-2024.acs100.s0,state,persons_in_households,51,0.02115270158590316,0.01734774861219062,0.024100213806170213 +national,b300k.cps2023-2024.acs100.s0,state,persons_male,51,0.022924287855974886,0.0166345643623313,0.03638023804000716 +national,b300k.cps2023-2024.acs100.s0,state,persons_total,51,0.01526269965988254,0.011576768719616827,0.026083135523212342 +national,b300k.cps2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.23784795928982574,0.2458778620639227,0.19667184532866613 +national,b300k.cps2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.15836580717548704,0.1377371280516969,0.1688786671295249 +national,b300k.cps2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.20154609340709723,0.19214184171043472,0.20586815296275546 +national,b300k.cps2023-2024.acs100.s0,state,renter,51,0.08330569322846994,0.06682898554489158,0.054246188130893436 +national,b300k.cps2024.acs000.s0,cd,households,436,0.0674880287692212,0.05274079102107186,0.05325389470712396 +national,b300k.cps2024.acs000.s0,cd,owner,436,0.14948548400318845,0.08402531771642886,0.14077060356552817 +national,b300k.cps2024.acs000.s0,cd,persons_0_17,436,0.15855785812568668,0.11705060612775171,0.1311649722369435 +national,b300k.cps2024.acs000.s0,cd,persons_18_64,436,0.07382234285797036,0.06293296397970277,0.0634839506501305 +national,b300k.cps2024.acs000.s0,cd,persons_65p,436,0.14756112073144062,0.11700262046407992,0.13998017631797427 +national,b300k.cps2024.acs000.s0,cd,persons_in_households,436,0.07284803023289094,0.05624676030117298,0.054935697126162315 +national,b300k.cps2024.acs000.s0,cd,persons_male,436,0.07079418050637383,0.05634993397208461,0.06229145930936586 +national,b300k.cps2024.acs000.s0,cd,persons_total,436,0.0655346483464504,0.051385470638122745,0.05264424882012382 +national,b300k.cps2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.47442543093482886,0.4892309031266726,0.5528534080004882 +national,b300k.cps2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3423974188779214,0.27937321602011955,0.3179372350717971 +national,b300k.cps2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.30627033374209384,0.2792992862348131,0.2829032167660115 +national,b300k.cps2024.acs000.s0,cd,renter,436,0.25755434460731363,0.20981758259890973,0.23473340185005617 +national,b300k.cps2024.acs000.s0,county,households,850,0.11625416081719966,0.08864360093225396,0.0832784674286999 +national,b300k.cps2024.acs000.s0,county,owner,850,0.17077169053970184,0.12691693072537097,0.1498085561133901 +national,b300k.cps2024.acs000.s0,county,persons_0_17,850,0.2477880007924063,0.18233374179118197,0.18566076860806963 +national,b300k.cps2024.acs000.s0,county,persons_18_64,850,0.14453210750117587,0.10500014593255137,0.11424708179130634 +national,b300k.cps2024.acs000.s0,county,persons_65p,850,0.22115153441433608,0.173095122380731,0.1836137625425742 +national,b300k.cps2024.acs000.s0,county,persons_in_households,850,0.1321239878341516,0.09274942452037857,0.09485734865046187 +national,b300k.cps2024.acs000.s0,county,persons_male,850,0.1320743996079062,0.09628938090125672,0.09915657570484801 +national,b300k.cps2024.acs000.s0,county,persons_total,850,0.12413153002487026,0.0899671731678316,0.09014898316489524 +national,b300k.cps2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.5166186032188235,0.5407454241482218,0.5446751934509556 +national,b300k.cps2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.422244695526828,0.32576534766260085,0.403997187213267 +national,b300k.cps2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.37065127192112185,0.3120786078398141,0.3407041948901364 +national,b300k.cps2024.acs000.s0,county,renter,850,0.3419525006311758,0.25255761324094816,0.3116467943447933 +national,b300k.cps2024.acs000.s0,national,households,1,0.042503266857548044,0.042503266857548044,0.04250326623243594 +national,b300k.cps2024.acs000.s0,national,owner,1,0.03200889182651092,0.03200889182651092,0.04010859549596169 +national,b300k.cps2024.acs000.s0,national,persons_0_17,1,0.06116570239836122,0.06116570239836122,0.03288093308214637 +national,b300k.cps2024.acs000.s0,national,persons_18_64,1,0.012113673348359475,0.012113673348359475,0.028643647198409762 +national,b300k.cps2024.acs000.s0,national,persons_65p,1,0.0005023724973787453,0.0005023724973787453,0.03895423703662803 +national,b300k.cps2024.acs000.s0,national,persons_in_households,1,0.031122162766266025,0.031122162766266025,0.007468807603647675 +national,b300k.cps2024.acs000.s0,national,persons_male,1,0.012777707326235562,0.012777707326235562,0.03015050978084711 +national,b300k.cps2024.acs000.s0,national,persons_total,1,0.005690373100143351,0.005690373100143351,0.017379591291608435 +national,b300k.cps2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.539094283926172,0.539094283926172,0.6395411932654282 +national,b300k.cps2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.08438736842290485,0.08438736842290485,0.09886944608010037 +national,b300k.cps2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.19565744191824505,0.19565744191824505,0.2083795811585734 +national,b300k.cps2024.acs000.s0,national,renter,1,0.02769438835940242,0.02769438835940242,0.01224278155079332 +national,b300k.cps2024.acs000.s0,state,households,51,0.04069855900412696,0.03511809975705684,0.04113183240018178 +national,b300k.cps2024.acs000.s0,state,owner,51,0.03867846568274794,0.03497919514241723,0.0473744543754758 +national,b300k.cps2024.acs000.s0,state,persons_0_17,51,0.06931207437732052,0.06841205804135012,0.05938231280038831 +national,b300k.cps2024.acs000.s0,state,persons_18_64,51,0.024564903767353007,0.01827959725215107,0.03622043144079565 +national,b300k.cps2024.acs000.s0,state,persons_65p,51,0.02724168933835994,0.005588968124640139,0.05328853265489987 +national,b300k.cps2024.acs000.s0,state,persons_in_households,51,0.03129060768796522,0.027356701512200335,0.019861435559825554 +national,b300k.cps2024.acs000.s0,state,persons_male,51,0.02937596239091268,0.030908491940299227,0.03069101486430921 +national,b300k.cps2024.acs000.s0,state,persons_total,51,0.016076452960188586,0.012021854517197478,0.01840903075160705 +national,b300k.cps2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4510311884013043,0.43990476993901145,0.5260015221555048 +national,b300k.cps2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.12998074429606976,0.12292752854083262,0.12759779821473954 +national,b300k.cps2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2032555429435214,0.20852181839423425,0.2025211568796703 +national,b300k.cps2024.acs000.s0,state,renter,51,0.08380148348937297,0.06955425013749097,0.07151289876278501 +national,b300k.cps2024.acs100.s0,cd,households,436,0.08101844286363714,0.06244082613945334,0.0445186582648168 +national,b300k.cps2024.acs100.s0,cd,owner,436,0.11083279251046732,0.07281490873375449,0.06408132108321789 +national,b300k.cps2024.acs100.s0,cd,persons_0_17,436,0.15973412311961405,0.13511999168206051,0.1011149875638067 +national,b300k.cps2024.acs100.s0,cd,persons_18_64,436,0.07990605697391219,0.06712449773448276,0.053087998847227875 +national,b300k.cps2024.acs100.s0,cd,persons_65p,436,0.11689433493406204,0.09483952053155462,0.07579294253113192 +national,b300k.cps2024.acs100.s0,cd,persons_in_households,436,0.07623224611086325,0.06371590565423646,0.05045012484316011 +national,b300k.cps2024.acs100.s0,cd,persons_male,436,0.0747591958768181,0.058275535778771384,0.05742995594700321 +national,b300k.cps2024.acs100.s0,cd,persons_total,436,0.07224448546698713,0.06015847184488131,0.05020954772082696 +national,b300k.cps2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.20958508420403657,0.19616147687331023,0.138503910174953 +national,b300k.cps2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.35197755641584283,0.2956658940415483,0.3277378477880494 +national,b300k.cps2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.29434144621757646,0.2620733066920712,0.2850439607136127 +national,b300k.cps2024.acs100.s0,cd,renter,436,0.1772693289735572,0.15270928382069043,0.10562970911566646 +national,b300k.cps2024.acs100.s0,county,households,850,0.15013125385387072,0.10772058801535508,0.09604511971690513 +national,b300k.cps2024.acs100.s0,county,owner,850,0.17514464100730928,0.1245931078961891,0.11549907454876397 +national,b300k.cps2024.acs100.s0,county,persons_0_17,850,0.2879883025468139,0.2029813636717652,0.1968736402180397 +national,b300k.cps2024.acs100.s0,county,persons_18_64,850,0.1747503036493535,0.12746597738386423,0.1152949893009183 +national,b300k.cps2024.acs100.s0,county,persons_65p,850,0.22571087990564637,0.16695494507217645,0.14765770582025672 +national,b300k.cps2024.acs100.s0,county,persons_in_households,850,0.16503361760536123,0.11212833461444041,0.11037454032549172 +national,b300k.cps2024.acs100.s0,county,persons_male,850,0.16847248342287163,0.12437125115061683,0.11540155756888201 +national,b300k.cps2024.acs100.s0,county,persons_total,850,0.1601278463052193,0.11297570378761504,0.10711382447994193 +national,b300k.cps2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.2938229587280357,0.24931931617984762,0.2025009679662354 +national,b300k.cps2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4369494948799025,0.36144628290904923,0.4115667347806425 +national,b300k.cps2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.39359774115216034,0.3306757850955234,0.34975265949333967 +national,b300k.cps2024.acs100.s0,county,renter,850,0.2928867117169829,0.23405432052624758,0.20593617007171544 +national,b300k.cps2024.acs100.s0,national,households,1,0.031917591807078885,0.031917591807078885,0.009405048708776023 +national,b300k.cps2024.acs100.s0,national,owner,1,0.0492879263060249,0.0492879263060249,0.011149148171989243 +national,b300k.cps2024.acs100.s0,national,persons_0_17,1,0.07437901819327178,0.07437901819327178,0.03934535382767289 +national,b300k.cps2024.acs100.s0,national,persons_18_64,1,0.0216063919393169,0.0216063919393169,0.020760608153350738 +national,b300k.cps2024.acs100.s0,national,persons_65p,1,0.00029937477859186626,0.00029937477859186626,0.020145296515002298 +national,b300k.cps2024.acs100.s0,national,persons_in_households,1,0.01682310045549248,0.01682310045549248,0.012887804579998606 +national,b300k.cps2024.acs100.s0,national,persons_male,1,0.010509988378541783,0.010509988378541783,0.028825524095141112 +national,b300k.cps2024.acs100.s0,national,persons_total,1,0.0028124138713776334,0.0028124138713776334,0.017379591291554284 +national,b300k.cps2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.15667006070176775,0.15667006070176775,0.10519850185068137 +national,b300k.cps2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.08643647394290539,0.08643647394290539,0.12122007030868508 +national,b300k.cps2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.19745752933392188,0.19745752933392188,0.22801403971314627 +national,b300k.cps2024.acs100.s0,national,renter,1,0.042895779129269895,0.042895779129269895,0.03793725868236157 +national,b300k.cps2024.acs100.s0,state,households,51,0.03174321950118475,0.025206728160688356,0.023801392273112943 +national,b300k.cps2024.acs100.s0,state,owner,51,0.04505511413885919,0.03754914523365948,0.026253475518179904 +national,b300k.cps2024.acs100.s0,state,persons_0_17,51,0.07261998383730159,0.05719899134518714,0.060576324539654995 +national,b300k.cps2024.acs100.s0,state,persons_18_64,51,0.02890874931497288,0.019334619387050805,0.02961978201893944 +national,b300k.cps2024.acs100.s0,state,persons_65p,51,0.01714481098139381,0.006083395392028057,0.036465302363331495 +national,b300k.cps2024.acs100.s0,state,persons_in_households,51,0.019810127062663763,0.014700575482996326,0.02595010544588405 +national,b300k.cps2024.acs100.s0,state,persons_male,51,0.02196700495106504,0.015933855064098335,0.03638472546612089 +national,b300k.cps2024.acs100.s0,state,persons_total,51,0.016456923859269206,0.010832280780540429,0.02698706008569942 +national,b300k.cps2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.149662549977381,0.164209908776001,0.09423245701524154 +national,b300k.cps2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.16999885751565932,0.14246137144566384,0.18470102376411873 +national,b300k.cps2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.1968943346979549,0.17193769151224367,0.2070420821336953 +national,b300k.cps2024.acs100.s0,state,renter,51,0.08999175388385075,0.07928263425250653,0.05772056447604141 +national,b300k.cps2024.acs100.s1,cd,households,436,0.08090495149435195,0.06439555096032126,0.043666327344408395 +national,b300k.cps2024.acs100.s1,cd,owner,436,0.11369207866160631,0.07799464926655283,0.06446595871546629 +national,b300k.cps2024.acs100.s1,cd,persons_0_17,436,0.15733575255459678,0.13047504761535053,0.10131289177297828 +national,b300k.cps2024.acs100.s1,cd,persons_18_64,436,0.08717027344041157,0.06986084917752453,0.05527546733560979 +national,b300k.cps2024.acs100.s1,cd,persons_65p,436,0.123186357972296,0.10600993806678005,0.0749841921549136 +national,b300k.cps2024.acs100.s1,cd,persons_in_households,436,0.08286219840918974,0.0695924438857558,0.051333162330392645 +national,b300k.cps2024.acs100.s1,cd,persons_male,436,0.08496627243348687,0.07033838177000806,0.059876637977190415 +national,b300k.cps2024.acs100.s1,cd,persons_total,436,0.07929735999720403,0.06560368269212902,0.050658066765181003 +national,b300k.cps2024.acs100.s1,cd,real_estate_taxes_aggregate,436,0.20736179189541065,0.19744739839579323,0.13922265124603075 +national,b300k.cps2024.acs100.s1,cd,rent_contract_annual_aggregate,436,0.34234722584202837,0.3031378295950551,0.3144112076841177 +national,b300k.cps2024.acs100.s1,cd,rent_gross_annual_aggregate,436,0.2933881582287202,0.25627463121780714,0.27424807769698756 +national,b300k.cps2024.acs100.s1,cd,renter,436,0.1756544876393553,0.1452731770019195,0.10866752087198374 +national,b300k.cps2024.acs100.s1,county,households,850,0.15538294981932654,0.10714172001438019,0.09244479905077944 +national,b300k.cps2024.acs100.s1,county,owner,850,0.18268736915728287,0.1304092523579447,0.10829972908532866 +national,b300k.cps2024.acs100.s1,county,persons_0_17,850,0.2736368676517163,0.2040349061632739,0.21066372424798901 +national,b300k.cps2024.acs100.s1,county,persons_18_64,850,0.180161997878847,0.12977168661762362,0.11697017284834327 +national,b300k.cps2024.acs100.s1,county,persons_65p,850,0.22747961396315852,0.18306658038429635,0.14874591163846015 +national,b300k.cps2024.acs100.s1,county,persons_in_households,850,0.17157539051335982,0.12224969764678216,0.110588593691157 +national,b300k.cps2024.acs100.s1,county,persons_male,850,0.17550761058211847,0.1338113818337976,0.11910281121417693 +national,b300k.cps2024.acs100.s1,county,persons_total,850,0.16521151397144235,0.11879837984501371,0.10785239755419546 +national,b300k.cps2024.acs100.s1,county,real_estate_taxes_aggregate,850,0.2990019267273842,0.2599970486608152,0.19817254415613586 +national,b300k.cps2024.acs100.s1,county,rent_contract_annual_aggregate,850,0.44233824244083264,0.36846341530873017,0.40114437891484006 +national,b300k.cps2024.acs100.s1,county,rent_gross_annual_aggregate,850,0.39354343081934234,0.3448988507797871,0.344211001664788 +national,b300k.cps2024.acs100.s1,county,renter,850,0.2999630430838605,0.2476454530648217,0.20313929769454747 +national,b300k.cps2024.acs100.s1,national,households,1,0.029664512333914417,0.029664512333914417,0.007135480860673591 +national,b300k.cps2024.acs100.s1,national,owner,1,0.04774269104458574,0.04774269104458574,0.006760642135513097 +national,b300k.cps2024.acs100.s1,national,persons_0_17,1,0.0700403992756002,0.0700403992756002,0.03239665815108548 +national,b300k.cps2024.acs100.s1,national,persons_18_64,1,0.022531468286676744,0.022531468286676744,0.0220436135717044 +national,b300k.cps2024.acs100.s1,national,persons_65p,1,0.00021447581033412648,0.00021447581033412648,0.016185055455979563 +national,b300k.cps2024.acs100.s1,national,persons_in_households,1,0.01545990995360194,0.01545990995360194,0.012745124341986979 +national,b300k.cps2024.acs100.s1,national,persons_male,1,0.01090774456103616,0.01090774456103616,0.028988409494756603 +national,b300k.cps2024.acs100.s1,national,persons_total,1,0.0013372491922772505,0.0013372491922772505,0.017379591291681866 +national,b300k.cps2024.acs100.s1,national,real_estate_taxes_aggregate,1,0.16532160437225468,0.16532160437225468,0.10788924995015199 +national,b300k.cps2024.acs100.s1,national,rent_contract_annual_aggregate,1,0.09370651102558565,0.09370651102558565,0.12613857323223815 +national,b300k.cps2024.acs100.s1,national,rent_gross_annual_aggregate,1,0.20384407318747277,0.20384407318747277,0.23233482023432472 +national,b300k.cps2024.acs100.s1,national,renter,1,0.047175707797804785,0.047175707797804785,0.03680538251027018 +national,b300k.cps2024.acs100.s1,state,households,51,0.030973130746136848,0.03170484940368832,0.016509876960375154 +national,b300k.cps2024.acs100.s1,state,owner,51,0.04391442887134357,0.038867723343318915,0.01776575510010848 +national,b300k.cps2024.acs100.s1,state,persons_0_17,51,0.07127828185679741,0.06177772250845184,0.05779517814902032 +national,b300k.cps2024.acs100.s1,state,persons_18_64,51,0.03106230303485937,0.026768688162270255,0.03303962043118999 +national,b300k.cps2024.acs100.s1,state,persons_65p,51,0.0172312829094892,0.007344244275853212,0.0328039014021689 +national,b300k.cps2024.acs100.s1,state,persons_in_households,51,0.019981711268529042,0.01439446935042592,0.025786709402797463 +national,b300k.cps2024.acs100.s1,state,persons_male,51,0.021181788075647117,0.015432562421127049,0.03465236347769676 +national,b300k.cps2024.acs100.s1,state,persons_total,51,0.016039126247091518,0.012282493054078424,0.026587166511169637 +national,b300k.cps2024.acs100.s1,state,real_estate_taxes_aggregate,51,0.16080889511440075,0.1661977637430562,0.09775079182205315 +national,b300k.cps2024.acs100.s1,state,rent_contract_annual_aggregate,51,0.17660178672044036,0.1418145031753751,0.1858112142185224 +national,b300k.cps2024.acs100.s1,state,rent_gross_annual_aggregate,51,0.2029804040732784,0.19595850103326176,0.21231117244279066 +national,b300k.cps2024.acs100.s1,state,renter,51,0.0907474767974611,0.07844612181801494,0.059409183848200924 +national,b300k.cps2024.acs100.s2,cd,households,436,0.0796632761545261,0.06491814787465713,0.04331851304134574 +national,b300k.cps2024.acs100.s2,cd,owner,436,0.11032653516592009,0.07482241492795524,0.06209214806116888 +national,b300k.cps2024.acs100.s2,cd,persons_0_17,436,0.15360197090677855,0.12485544930224737,0.10342165829279419 +national,b300k.cps2024.acs100.s2,cd,persons_18_64,436,0.07792838319061317,0.06011630018174159,0.05272373485245502 +national,b300k.cps2024.acs100.s2,cd,persons_65p,436,0.1136356727965607,0.08733024280321836,0.07597605451221584 +national,b300k.cps2024.acs100.s2,cd,persons_in_households,436,0.07527311476083347,0.06069084501951149,0.04808302024496203 +national,b300k.cps2024.acs100.s2,cd,persons_male,436,0.07632176993783851,0.06608779842171816,0.05751957426886549 +national,b300k.cps2024.acs100.s2,cd,persons_total,436,0.07151978177926634,0.05936441321319234,0.047740968379590465 +national,b300k.cps2024.acs100.s2,cd,real_estate_taxes_aggregate,436,0.20615728549294782,0.18977911262270505,0.13228862206640338 +national,b300k.cps2024.acs100.s2,cd,rent_contract_annual_aggregate,436,0.3371702649298445,0.28086557492548686,0.31819942924787176 +national,b300k.cps2024.acs100.s2,cd,rent_gross_annual_aggregate,436,0.29167083277838046,0.263388721234841,0.28118437560497095 +national,b300k.cps2024.acs100.s2,cd,renter,436,0.17501289384321697,0.15194451569088313,0.1065898955736187 +national,b300k.cps2024.acs100.s2,county,households,850,0.15421677195523284,0.10929058905022947,0.09529876221809666 +national,b300k.cps2024.acs100.s2,county,owner,850,0.18215617002387807,0.1307058989634349,0.11440609929049368 +national,b300k.cps2024.acs100.s2,county,persons_0_17,850,0.29315559244602835,0.21462360854512524,0.2042996714476425 +national,b300k.cps2024.acs100.s2,county,persons_18_64,850,0.17057096166931207,0.11852041429239686,0.11326194007444529 +national,b300k.cps2024.acs100.s2,county,persons_65p,850,0.22743351853445293,0.16479584027520924,0.1485364586129691 +national,b300k.cps2024.acs100.s2,county,persons_in_households,850,0.16595004860069243,0.11169222237883542,0.10562303715711137 +national,b300k.cps2024.acs100.s2,county,persons_male,850,0.16890012452954137,0.12108803948108335,0.11606407051368871 +national,b300k.cps2024.acs100.s2,county,persons_total,850,0.16007184643706154,0.10986252338844743,0.10342246146173768 +national,b300k.cps2024.acs100.s2,county,real_estate_taxes_aggregate,850,0.284537056219742,0.24832880123302736,0.2012923720797865 +national,b300k.cps2024.acs100.s2,county,rent_contract_annual_aggregate,850,0.4389965800787208,0.3573445191779637,0.4198081193231573 +national,b300k.cps2024.acs100.s2,county,rent_gross_annual_aggregate,850,0.39319346493734963,0.3337812999606556,0.3598222288063871 +national,b300k.cps2024.acs100.s2,county,renter,850,0.29914290644038594,0.23544416047199868,0.21394875331770885 +national,b300k.cps2024.acs100.s2,national,households,1,0.031697250542291604,0.031697250542291604,0.009413301953973515 +national,b300k.cps2024.acs100.s2,national,owner,1,0.04976176613597217,0.04976176613597217,0.009173457161656365 +national,b300k.cps2024.acs100.s2,national,persons_0_17,1,0.07047162679810698,0.07047162679810698,0.041448735400090655 +national,b300k.cps2024.acs100.s2,national,persons_18_64,1,0.02059516060577593,0.02059516060577593,0.020082445625907344 +national,b300k.cps2024.acs100.s2,national,persons_65p,1,8.764769359694069e-06,8.764769359694069e-06,0.02036963746209138 +national,b300k.cps2024.acs100.s2,national,persons_in_households,1,0.01671651565923538,0.01671651565923538,0.012728549890750515 +national,b300k.cps2024.acs100.s2,national,persons_male,1,0.01123974923492748,0.01123974923492748,0.028652397462910772 +national,b300k.cps2024.acs100.s2,national,persons_total,1,0.0026423460444105107,0.0026423460444105107,0.017379591291678886 +national,b300k.cps2024.acs100.s2,national,real_estate_taxes_aggregate,1,0.1576311932517165,0.1576311932517165,0.10864498173634508 +national,b300k.cps2024.acs100.s2,national,rent_contract_annual_aggregate,1,0.10569512482147018,0.10569512482147018,0.12946497246197944 +national,b300k.cps2024.acs100.s2,national,rent_gross_annual_aggregate,1,0.2143757674388141,0.2143757674388141,0.23525697789508435 +national,b300k.cps2024.acs100.s2,national,renter,1,0.04674174898811652,0.04674174898811652,0.0360035549662605 +national,b300k.cps2024.acs100.s2,state,households,51,0.03550932233634552,0.02843941210856927,0.01901002835770843 +national,b300k.cps2024.acs100.s2,state,owner,51,0.048115047627153316,0.04552955364245188,0.020465468366677945 +national,b300k.cps2024.acs100.s2,state,persons_0_17,51,0.06979605353577457,0.056158679819566425,0.06185684002766886 +national,b300k.cps2024.acs100.s2,state,persons_18_64,51,0.027623340397241746,0.018624683502374773,0.03214162327583207 +national,b300k.cps2024.acs100.s2,state,persons_65p,51,0.014208337741794742,0.00424222757886437,0.037406340913297025 +national,b300k.cps2024.acs100.s2,state,persons_in_households,51,0.01936984940608259,0.014637205697088098,0.025402788785354857 +national,b300k.cps2024.acs100.s2,state,persons_male,51,0.021700435233918514,0.019792807434610985,0.03649148102859059 +national,b300k.cps2024.acs100.s2,state,persons_total,51,0.015782366378167215,0.012513948356589906,0.026426138315958702 +national,b300k.cps2024.acs100.s2,state,real_estate_taxes_aggregate,51,0.14663139183255766,0.1490657237348988,0.0804511919488555 +national,b300k.cps2024.acs100.s2,state,rent_contract_annual_aggregate,51,0.1640570546864926,0.13633168092887502,0.17336608078593066 +national,b300k.cps2024.acs100.s2,state,rent_gross_annual_aggregate,51,0.20419602209063933,0.20811255200627807,0.20851901486314603 +national,b300k.cps2024.acs100.s2,state,renter,51,0.0983311496687627,0.10291726643095801,0.0697055944503938 +national,b600k.cps0.acs100.s0,cd,households,436,0.07414084845147878,0.0592889669286078,0.029131914349442446 +national,b600k.cps0.acs100.s0,cd,owner,436,0.09372409390044747,0.07352282209835181,0.04051540121109158 +national,b600k.cps0.acs100.s0,cd,persons_0_17,436,0.13445616284441006,0.09852284371209775,0.08208722591935363 +national,b600k.cps0.acs100.s0,cd,persons_18_64,436,0.08253020441367115,0.07026191177347488,0.040825249109997776 +national,b600k.cps0.acs100.s0,cd,persons_65p,436,0.11128995168636581,0.09054000794144755,0.05276132280332941 +national,b600k.cps0.acs100.s0,cd,persons_in_households,436,0.07778708708649938,0.0603154466722691,0.040826895330692475 +national,b600k.cps0.acs100.s0,cd,persons_male,436,0.08062953696897535,0.0660810460441365,0.046373344829246 +national,b600k.cps0.acs100.s0,cd,persons_total,436,0.07598268332078968,0.0608142389807673,0.03991902722308742 +national,b600k.cps0.acs100.s0,cd,real_estate_taxes_aggregate,436,0.19648535303447318,0.1436157769380832,0.11040149519824126 +national,b600k.cps0.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3408448752227502,0.28978424585600404,0.3172776952532818 +national,b600k.cps0.acs100.s0,cd,rent_gross_annual_aggregate,436,0.2990170935597884,0.25822955148458215,0.2794535424362954 +national,b600k.cps0.acs100.s0,cd,renter,436,0.1521027443946247,0.13516958803994114,0.07627181026553721 +national,b600k.cps0.acs100.s0,county,households,850,0.1325565622420884,0.09648368739824512,0.06554917480320599 +national,b600k.cps0.acs100.s0,county,owner,850,0.15700278761903955,0.11644330110669229,0.08017899518063644 +national,b600k.cps0.acs100.s0,county,persons_0_17,850,0.2526746746679987,0.17831862187174213,0.15566370071385557 +national,b600k.cps0.acs100.s0,county,persons_18_64,850,0.15631605531575166,0.11620858098665025,0.08602364741400081 +national,b600k.cps0.acs100.s0,county,persons_65p,850,0.19675160251967536,0.14741428163197515,0.10686977334736653 +national,b600k.cps0.acs100.s0,county,persons_in_households,850,0.15122268911313838,0.10633865633499147,0.08255564542316682 +national,b600k.cps0.acs100.s0,county,persons_male,850,0.15017490544259623,0.10878277109563886,0.08761508069603569 +national,b600k.cps0.acs100.s0,county,persons_total,850,0.1460272847974737,0.10364575503605182,0.07963123059554887 +national,b600k.cps0.acs100.s0,county,real_estate_taxes_aggregate,850,0.266432288838334,0.19220570052705302,0.16370180319595093 +national,b600k.cps0.acs100.s0,county,rent_contract_annual_aggregate,850,0.42245980878793316,0.34361815584287125,0.3984796007607794 +national,b600k.cps0.acs100.s0,county,rent_gross_annual_aggregate,850,0.37995965936480885,0.3181968564453314,0.3316674139615876 +national,b600k.cps0.acs100.s0,county,renter,850,0.2611773038780707,0.21368606301717857,0.15085102425283922 +national,b600k.cps0.acs100.s0,national,households,1,0.012045714376214284,0.012045714376214284,5.938114703318635e-05 +national,b600k.cps0.acs100.s0,national,owner,1,0.05248147138028743,0.05248147138028743,0.0019768920071729147 +national,b600k.cps0.acs100.s0,national,persons_0_17,1,0.07395108680626285,0.07395108680626285,0.036576349200425594 +national,b600k.cps0.acs100.s0,national,persons_18_64,1,0.02939642887682944,0.02939642887682944,0.01945871613649533 +national,b600k.cps0.acs100.s0,national,persons_65p,1,4.591653435175951e-05,4.591653435175951e-05,0.01247044340014511 +national,b600k.cps0.acs100.s0,national,persons_in_households,1,0.0030307115927772628,0.0030307115927772628,0.01760172242520067 +national,b600k.cps0.acs100.s0,national,persons_male,1,0.015098837338009556,0.015098837338009556,0.02802336143491234 +national,b600k.cps0.acs100.s0,national,persons_total,1,0.001934017289994047,0.001934017289994047,0.01737959129143231 +national,b600k.cps0.acs100.s0,national,real_estate_taxes_aggregate,1,0.15008327882654668,0.15008327882654668,0.017499562552654998 +national,b600k.cps0.acs100.s0,national,rent_contract_annual_aggregate,1,0.13023971515691185,0.13023971515691185,0.13137360530288825 +national,b600k.cps0.acs100.s0,national,rent_gross_annual_aggregate,1,0.23593756977379593,0.23593756977379593,0.23693366361211204 +national,b600k.cps0.acs100.s0,national,renter,1,0.10787699829625168,0.10787699829625168,0.050253109583821384 +national,b600k.cps0.acs100.s0,state,households,51,0.028565035004521767,0.019802480373603368,0.012233601743234922 +national,b600k.cps0.acs100.s0,state,owner,51,0.04858950048682312,0.042297729120746905,0.014361305690807256 +national,b600k.cps0.acs100.s0,state,persons_0_17,51,0.07301360197790821,0.0550027749049991,0.04112786132694817 +national,b600k.cps0.acs100.s0,state,persons_18_64,51,0.03524905436085624,0.022125164691657064,0.02441474410562478 +national,b600k.cps0.acs100.s0,state,persons_65p,51,0.013212537725317164,0.00605772163208258,0.027109918630514686 +national,b600k.cps0.acs100.s0,state,persons_in_households,51,0.01915306251643372,0.012786106671555214,0.020857298561184786 +national,b600k.cps0.acs100.s0,state,persons_male,51,0.026888063565977834,0.021372932514964468,0.02713622544399762 +national,b600k.cps0.acs100.s0,state,persons_total,51,0.01877583409487135,0.015564008647042028,0.02027053840681421 +national,b600k.cps0.acs100.s0,state,real_estate_taxes_aggregate,51,0.12055726341052146,0.1114048500077787,0.03325181722010736 +national,b600k.cps0.acs100.s0,state,rent_contract_annual_aggregate,51,0.20666991501973037,0.16295141484906492,0.19724700364051598 +national,b600k.cps0.acs100.s0,state,rent_gross_annual_aggregate,51,0.2279878544664096,0.20558944537267823,0.21690873070493952 +national,b600k.cps0.acs100.s0,state,renter,51,0.1284315345577252,0.12535442061465393,0.05752235131944817 +national,b600k.cps2022-2023-2024.acs000.s0,cd,households,436,0.060002043442581164,0.04213460844445295,0.04801722281360067 +national,b600k.cps2022-2023-2024.acs000.s0,cd,owner,436,0.14326228774706112,0.07434173363185752,0.13969944664351838 +national,b600k.cps2022-2023-2024.acs000.s0,cd,persons_0_17,436,0.14310699911165264,0.11035296798849335,0.11894334403780951 +national,b600k.cps2022-2023-2024.acs000.s0,cd,persons_18_64,436,0.0607214366725124,0.048993480782563784,0.05613206137225359 +national,b600k.cps2022-2023-2024.acs000.s0,cd,persons_65p,436,0.13295318338546633,0.09979987805681113,0.128341874121303 +national,b600k.cps2022-2023-2024.acs000.s0,cd,persons_in_households,436,0.06240987772719216,0.049689236898378134,0.049958866335626136 +national,b600k.cps2022-2023-2024.acs000.s0,cd,persons_male,436,0.058947519657393393,0.04591717631697646,0.05638393934796342 +national,b600k.cps2022-2023-2024.acs000.s0,cd,persons_total,436,0.052023965226079535,0.038595972693146074,0.0464902838324475 +national,b600k.cps2022-2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.47067137359535527,0.49330508660923317,0.5765731026475934 +national,b600k.cps2022-2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3302130491278194,0.27318683291778295,0.31623224000001665 +national,b600k.cps2022-2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.3034504527868623,0.2773548241098357,0.2882616247944339 +national,b600k.cps2022-2023-2024.acs000.s0,cd,renter,436,0.2399534641362912,0.18609340750199205,0.22575486338826894 +national,b600k.cps2022-2023-2024.acs000.s0,county,households,850,0.09446881620630154,0.06747145075664128,0.07079583003375713 +national,b600k.cps2022-2023-2024.acs000.s0,county,owner,850,0.15074632729203594,0.10822696448706343,0.13838716902434267 +national,b600k.cps2022-2023-2024.acs000.s0,county,persons_0_17,850,0.20733802516706298,0.14282471744502548,0.16096348049085904 +national,b600k.cps2022-2023-2024.acs000.s0,county,persons_18_64,850,0.11478420826302678,0.08171178918757732,0.09531176868706699 +national,b600k.cps2022-2023-2024.acs000.s0,county,persons_65p,850,0.19138340201787282,0.1435126004574654,0.16230870184838916 +national,b600k.cps2022-2023-2024.acs000.s0,county,persons_in_households,850,0.10373348752884909,0.07365410999630892,0.07866774822280603 +national,b600k.cps2022-2023-2024.acs000.s0,county,persons_male,850,0.10172602005891411,0.06995245979756279,0.08335934248251217 +national,b600k.cps2022-2023-2024.acs000.s0,county,persons_total,850,0.09451653230901969,0.06558855116675497,0.0736315251376632 +national,b600k.cps2022-2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.4834972577024314,0.5191533106045221,0.5552760703819513 +national,b600k.cps2022-2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.40747700523924174,0.3291136526184297,0.40070703161679877 +national,b600k.cps2022-2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.35685438924987317,0.29584505029955566,0.3405721258724111 +national,b600k.cps2022-2023-2024.acs000.s0,county,renter,850,0.32325428680811946,0.2485297201235461,0.3028016551040578 +national,b600k.cps2022-2023-2024.acs000.s0,national,households,1,0.04038778034585477,0.04038778034585477,0.04038778011268734 +national,b600k.cps2022-2023-2024.acs000.s0,national,owner,1,0.04808511804256383,0.04808511804256383,0.04504294266356592 +national,b600k.cps2022-2023-2024.acs000.s0,national,persons_0_17,1,0.06309578807752662,0.06309578807752662,0.02109426309349261 +national,b600k.cps2022-2023-2024.acs000.s0,national,persons_18_64,1,0.01379274395344962,0.01379274395344962,0.026748636552436502 +national,b600k.cps2022-2023-2024.acs000.s0,national,persons_65p,1,0.0007490670670807014,0.0007490670670807014,0.018547026346196087 +national,b600k.cps2022-2023-2024.acs000.s0,national,persons_in_households,1,0.030458563364602367,0.030458563364602367,0.00746880760395044 +national,b600k.cps2022-2023-2024.acs000.s0,national,persons_male,1,0.007673079924162458,0.007673079924162458,0.030890456469041976 +national,b600k.cps2022-2023-2024.acs000.s0,national,persons_total,1,0.005043140838102024,0.005043140838102024,0.01737959129131314 +national,b600k.cps2022-2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5421010033465041,0.5421010033465041,0.6659411721508722 +national,b600k.cps2022-2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.12051269370451184,0.12051269370451184,0.13110826309034238 +national,b600k.cps2022-2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.22739262724273523,0.22739262724273523,0.23670056718394392 +national,b600k.cps2022-2023-2024.acs000.s0,national,renter,1,0.007383763114273543,0.007383763114273543,0.0022442128363200317 +national,b600k.cps2022-2023-2024.acs000.s0,state,households,51,0.038240237370375116,0.029819493556678144,0.038818772971578756 +national,b600k.cps2022-2023-2024.acs000.s0,state,owner,51,0.042982311003997825,0.044097596966668144,0.04937364843674589 +national,b600k.cps2022-2023-2024.acs000.s0,state,persons_0_17,51,0.07068732524346281,0.069014781025452,0.051251297935895425 +national,b600k.cps2022-2023-2024.acs000.s0,state,persons_18_64,51,0.02381404389278115,0.017356694059507252,0.029082605581341018 +national,b600k.cps2022-2023-2024.acs000.s0,state,persons_65p,51,0.02467220163146709,0.008102424051727033,0.033742093722682706 +national,b600k.cps2022-2023-2024.acs000.s0,state,persons_in_households,51,0.030393275766316532,0.027038150434896206,0.020461498374015723 +national,b600k.cps2022-2023-2024.acs000.s0,state,persons_male,51,0.021502312363578212,0.015273283186426618,0.030540574782716375 +national,b600k.cps2022-2023-2024.acs000.s0,state,persons_total,51,0.014906519702088925,0.010039531454165057,0.01771959021526217 +national,b600k.cps2022-2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.45702651951832735,0.4503891104629668,0.5512094530501028 +national,b600k.cps2022-2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.14195838173980319,0.1353850548696627,0.1468564716660872 +national,b600k.cps2022-2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.23015237560818547,0.20931457006047932,0.2319063763479941 +national,b600k.cps2022-2023-2024.acs000.s0,state,renter,51,0.08637478324960471,0.079804582343505,0.058740079396225546 +national,b600k.cps2022-2023-2024.acs050.s0,cd,households,436,0.06431988196538463,0.04855680375725209,0.04076660944068676 +national,b600k.cps2022-2023-2024.acs050.s0,cd,owner,436,0.11874910795021167,0.06724313025720116,0.10309806957703438 +national,b600k.cps2022-2023-2024.acs050.s0,cd,persons_0_17,436,0.1282129942376719,0.09219186505423582,0.09416791053042188 +national,b600k.cps2022-2023-2024.acs050.s0,cd,persons_18_64,436,0.05902393460910494,0.051929914155506574,0.045930432415639405 +national,b600k.cps2022-2023-2024.acs050.s0,cd,persons_65p,436,0.10454568720461468,0.07996915853684633,0.09371557363276464 +national,b600k.cps2022-2023-2024.acs050.s0,cd,persons_in_households,436,0.056687107047555314,0.04395009712170181,0.03934938141426412 +national,b600k.cps2022-2023-2024.acs050.s0,cd,persons_male,436,0.05532995666771832,0.04435232166625247,0.04798835098337538 +national,b600k.cps2022-2023-2024.acs050.s0,cd,persons_total,436,0.04998730202579807,0.03978905884200983,0.03878063239127864 +national,b600k.cps2022-2023-2024.acs050.s0,cd,real_estate_taxes_aggregate,436,0.3296921416338998,0.34410136633391597,0.36210372447109174 +national,b600k.cps2022-2023-2024.acs050.s0,cd,rent_contract_annual_aggregate,436,0.3291714993672582,0.2696407846288373,0.31345895784069233 +national,b600k.cps2022-2023-2024.acs050.s0,cd,rent_gross_annual_aggregate,436,0.287558196871872,0.25736570657438596,0.27504990828074793 +national,b600k.cps2022-2023-2024.acs050.s0,cd,renter,436,0.19141413353249856,0.15029211016155553,0.15967464680644824 +national,b600k.cps2022-2023-2024.acs050.s0,county,households,850,0.10064921625922718,0.07009304943956829,0.07282913072759298 +national,b600k.cps2022-2023-2024.acs050.s0,county,owner,850,0.1403053843260553,0.10270079993047368,0.11646523216809596 +national,b600k.cps2022-2023-2024.acs050.s0,county,persons_0_17,850,0.20999554918229338,0.15081971195987606,0.14915435274988675 +national,b600k.cps2022-2023-2024.acs050.s0,county,persons_18_64,850,0.12086811479495004,0.08820950277043715,0.0885193849220127 +national,b600k.cps2022-2023-2024.acs050.s0,county,persons_65p,850,0.17916075846917842,0.13463538841834735,0.13962343544320704 +national,b600k.cps2022-2023-2024.acs050.s0,county,persons_in_households,850,0.10898724205584127,0.07130788518157291,0.07782725672079106 +national,b600k.cps2022-2023-2024.acs050.s0,county,persons_male,850,0.11281729269082172,0.08044528774737583,0.08404599951802504 +national,b600k.cps2022-2023-2024.acs050.s0,county,persons_total,850,0.10248919467571839,0.06833925889239964,0.07530376871577389 +national,b600k.cps2022-2023-2024.acs050.s0,county,real_estate_taxes_aggregate,850,0.3640312380557337,0.3588156313221753,0.35876215059500544 +national,b600k.cps2022-2023-2024.acs050.s0,county,rent_contract_annual_aggregate,850,0.4102324731642064,0.3272082430158455,0.3952793971545376 +national,b600k.cps2022-2023-2024.acs050.s0,county,rent_gross_annual_aggregate,850,0.3545246595185222,0.29614631684517784,0.3307980790519032 +national,b600k.cps2022-2023-2024.acs050.s0,county,renter,850,0.2685897414002361,0.21697013122521813,0.22587235478886497 +national,b600k.cps2022-2023-2024.acs050.s0,national,households,1,0.03735191267418759,0.03735191267418759,0.02654951890742389 +national,b600k.cps2022-2023-2024.acs050.s0,national,owner,1,0.05352323415737309,0.05352323415737309,0.030642047718378935 +national,b600k.cps2022-2023-2024.acs050.s0,national,persons_0_17,1,0.06664145892594266,0.06664145892594266,0.02843698537315832 +national,b600k.cps2022-2023-2024.acs050.s0,national,persons_18_64,1,0.017952517107229064,0.017952517107229064,0.02401883189545691 +national,b600k.cps2022-2023-2024.acs050.s0,national,persons_65p,1,0.0007773664598441149,0.0007773664598441149,0.01811162226616691 +national,b600k.cps2022-2023-2024.acs050.s0,national,persons_in_households,1,0.024106379671600172,0.024106379671600172,0.0013977685137549069 +national,b600k.cps2022-2023-2024.acs050.s0,national,persons_male,1,0.009786033367151711,0.009786033367151711,0.02998682446234174 +national,b600k.cps2022-2023-2024.acs050.s0,national,persons_total,1,0.0032796031292041936,0.0032796031292041936,0.017379591291606683 +national,b600k.cps2022-2023-2024.acs050.s0,national,real_estate_taxes_aggregate,1,0.3561441874108551,0.3561441874108551,0.42226202267962937 +national,b600k.cps2022-2023-2024.acs050.s0,national,rent_contract_annual_aggregate,1,0.10578927172847728,0.10578927172847728,0.1294539567926372 +national,b600k.cps2022-2023-2024.acs050.s0,national,rent_gross_annual_aggregate,1,0.21445847311740127,0.21445847311740127,0.23524730090794793 +national,b600k.cps2022-2023-2024.acs050.s0,national,renter,1,0.029664240016926333,0.029664240016926333,0.019179098677224803 +national,b600k.cps2022-2023-2024.acs050.s0,state,households,51,0.034668605864753566,0.02310329272596817,0.029996373805502928 +national,b600k.cps2022-2023-2024.acs050.s0,state,owner,51,0.04404109540015243,0.03735817507902847,0.03478868669108088 +national,b600k.cps2022-2023-2024.acs050.s0,state,persons_0_17,51,0.06926400422984134,0.06250894111415595,0.04757777527998962 +national,b600k.cps2022-2023-2024.acs050.s0,state,persons_18_64,51,0.02672218821079481,0.016942192006532544,0.027509490333724632 +national,b600k.cps2022-2023-2024.acs050.s0,state,persons_65p,51,0.02255547665958944,0.006402838718725874,0.02919642305626463 +national,b600k.cps2022-2023-2024.acs050.s0,state,persons_in_households,51,0.024344253285723483,0.02355789814396465,0.01794596655497512 +national,b600k.cps2022-2023-2024.acs050.s0,state,persons_male,51,0.020852752675555104,0.015304652472317971,0.030145794013306495 +national,b600k.cps2022-2023-2024.acs050.s0,state,persons_total,51,0.015483636551312397,0.011843237014794299,0.018901079284208228 +national,b600k.cps2022-2023-2024.acs050.s0,state,real_estate_taxes_aggregate,51,0.3448752801525748,0.36532710173280963,0.350556825426126 +national,b600k.cps2022-2023-2024.acs050.s0,state,rent_contract_annual_aggregate,51,0.1480749849853002,0.1298085643033683,0.15280228479458702 +national,b600k.cps2022-2023-2024.acs050.s0,state,rent_gross_annual_aggregate,51,0.21025370645541508,0.2235069699401014,0.21406906286509106 +national,b600k.cps2022-2023-2024.acs050.s0,state,renter,51,0.08171857211175315,0.07691359064514947,0.05134947943147949 +national,b600k.cps2022-2023-2024.acs100.s0,cd,households,436,0.06908926125073285,0.05207447178940018,0.03506520730176734 +national,b600k.cps2022-2023-2024.acs100.s0,cd,owner,436,0.11300950009413746,0.07081139755228653,0.06384594718594004 +national,b600k.cps2022-2023-2024.acs100.s0,cd,persons_0_17,436,0.127554646461951,0.09867266393190277,0.07749915796910463 +national,b600k.cps2022-2023-2024.acs100.s0,cd,persons_18_64,436,0.062213946472975554,0.05260486884811352,0.0393318807368864 +national,b600k.cps2022-2023-2024.acs100.s0,cd,persons_65p,436,0.09826985716910151,0.08226361926357904,0.06486340081137254 +national,b600k.cps2022-2023-2024.acs100.s0,cd,persons_in_households,436,0.056418828624367666,0.04278526812417422,0.035676884526310466 +national,b600k.cps2022-2023-2024.acs100.s0,cd,persons_male,436,0.05767244748682679,0.04836883913001587,0.0443238019796366 +national,b600k.cps2022-2023-2024.acs100.s0,cd,persons_total,436,0.05272369141945046,0.041327427285298056,0.03631302649441157 +national,b600k.cps2022-2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.24162500181028324,0.23659379540221293,0.1659213056597975 +national,b600k.cps2022-2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3340546505626047,0.2780195189448083,0.31245072840633165 +national,b600k.cps2022-2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.28211089423377445,0.26000933373617674,0.2731156193254158 +national,b600k.cps2022-2023-2024.acs100.s0,cd,renter,436,0.16556579062878252,0.14082531310278043,0.10015830093827033 +national,b600k.cps2022-2023-2024.acs100.s0,county,households,850,0.11656777479424907,0.08415781193935037,0.07022295455240964 +national,b600k.cps2022-2023-2024.acs100.s0,county,owner,850,0.15107011442922452,0.10908366770328891,0.09120412403910466 +national,b600k.cps2022-2023-2024.acs100.s0,county,persons_0_17,850,0.22547328411158046,0.15717295308949744,0.14930389281148404 +national,b600k.cps2022-2023-2024.acs100.s0,county,persons_18_64,850,0.13353202989051544,0.09539762552531901,0.08464531723176698 +national,b600k.cps2022-2023-2024.acs100.s0,county,persons_65p,850,0.17790024419405145,0.13426979573666215,0.11514056128954414 +national,b600k.cps2022-2023-2024.acs100.s0,county,persons_in_households,850,0.12416136438192883,0.08568818830593485,0.07930916467963997 +national,b600k.cps2022-2023-2024.acs100.s0,county,persons_male,850,0.1267813850709114,0.09358076993299061,0.08247131400907916 +national,b600k.cps2022-2023-2024.acs100.s0,county,persons_total,850,0.11826195552192546,0.08314949417016515,0.07734309998358456 +national,b600k.cps2022-2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.2990910271301661,0.27449817923566766,0.19722729789148571 +national,b600k.cps2022-2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4255368494328012,0.3438173249598957,0.39346589899240614 +national,b600k.cps2022-2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.36700634362940066,0.3162811642218729,0.3286331922752514 +national,b600k.cps2022-2023-2024.acs100.s0,county,renter,850,0.24838573316012114,0.19375049577671521,0.16162469496419019 +national,b600k.cps2022-2023-2024.acs100.s0,national,households,1,0.03418899787895899,0.03418899787895899,0.011916986562554879 +national,b600k.cps2022-2023-2024.acs100.s0,national,owner,1,0.05957472086488447,0.05957472086488447,0.014413246770240463 +national,b600k.cps2022-2023-2024.acs100.s0,national,persons_0_17,1,0.07050766467152457,0.07050766467152457,0.03192184197385389 +national,b600k.cps2022-2023-2024.acs100.s0,national,persons_18_64,1,0.021128295393195017,0.021128295393195017,0.021832260889236167 +national,b600k.cps2022-2023-2024.acs100.s0,national,persons_65p,1,0.0003900754203071322,0.0003900754203071322,0.014908986136342239 +national,b600k.cps2022-2023-2024.acs100.s0,national,persons_in_households,1,0.018672926633771104,0.018672926633771104,0.010370673031291317 +national,b600k.cps2022-2023-2024.acs100.s0,national,persons_male,1,0.009756960821811888,0.009756960821811888,0.028618045204852963 +national,b600k.cps2022-2023-2024.acs100.s0,national,persons_total,1,0.0022554408193166254,0.0022554408193166254,0.017379591291674157 +national,b600k.cps2022-2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.2378912961103497,0.2378912961103497,0.17769908558937333 +national,b600k.cps2022-2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.09547586627810646,0.09547586627810646,0.1296810222713484 +national,b600k.cps2022-2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.20539840706283297,0.20539840706283297,0.23544677219274665 +national,b600k.cps2022-2023-2024.acs100.s0,national,renter,1,0.053640645915570606,0.053640645915570606,0.03589758252028333 +national,b600k.cps2022-2023-2024.acs100.s0,state,households,51,0.033711835186838394,0.025765636013757462,0.0169975748768794 +national,b600k.cps2022-2023-2024.acs100.s0,state,owner,51,0.04695649448623879,0.040644256925322,0.019295694410602426 +national,b600k.cps2022-2023-2024.acs100.s0,state,persons_0_17,51,0.07238559070757364,0.06399653520408499,0.04707282476037992 +national,b600k.cps2022-2023-2024.acs100.s0,state,persons_18_64,51,0.028583950436674273,0.020011404886954454,0.023794807114982382 +national,b600k.cps2022-2023-2024.acs100.s0,state,persons_65p,51,0.018230840500665733,0.005017513908969191,0.02611831638512562 +national,b600k.cps2022-2023-2024.acs100.s0,state,persons_in_households,51,0.02028343347789527,0.017399435001435443,0.0173595699878346 +national,b600k.cps2022-2023-2024.acs100.s0,state,persons_male,51,0.019043914374072855,0.013438223096802183,0.02845235826373236 +national,b600k.cps2022-2023-2024.acs100.s0,state,persons_total,51,0.014768802256811056,0.011536816971793444,0.018551922555122165 +national,b600k.cps2022-2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.22506188014540546,0.2432459464807265,0.14846945183719518 +national,b600k.cps2022-2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.16568385554360393,0.12260005038045753,0.17508609473163061 +national,b600k.cps2022-2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.20336088078134168,0.20818266021253673,0.20840159791979437 +national,b600k.cps2022-2023-2024.acs100.s0,state,renter,51,0.09291403711144701,0.08526125584070257,0.049236075039910135 +national,b600k.cps2023-2024.acs000.s0,cd,households,436,0.05703256152369086,0.04674433571192389,0.04757020470526813 +national,b600k.cps2023-2024.acs000.s0,cd,owner,436,0.14509701583720427,0.08017712109732308,0.1419669757238363 +national,b600k.cps2023-2024.acs000.s0,cd,persons_0_17,436,0.14871016466183484,0.10773987393600484,0.12400367196258869 +national,b600k.cps2023-2024.acs000.s0,cd,persons_18_64,436,0.062131502973460234,0.04612383970451321,0.05876189764179027 +national,b600k.cps2023-2024.acs000.s0,cd,persons_65p,436,0.13552991352300414,0.10004372080126725,0.13165846430457087 +national,b600k.cps2023-2024.acs000.s0,cd,persons_in_households,436,0.06596254198800537,0.05196205220855834,0.05343453964063293 +national,b600k.cps2023-2024.acs000.s0,cd,persons_male,436,0.06303572770676645,0.04842733001503467,0.06047215373767997 +national,b600k.cps2023-2024.acs000.s0,cd,persons_total,436,0.05629197807612599,0.04111666615747935,0.05023260618751336 +national,b600k.cps2023-2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.46058316150484274,0.4785814043453197,0.5676811076228979 +national,b600k.cps2023-2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3255752631669309,0.27136261802627304,0.3153573695476941 +national,b600k.cps2023-2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.29698070867465953,0.271635713961847,0.2843506848649899 +national,b600k.cps2023-2024.acs000.s0,cd,renter,436,0.23569133993169747,0.18148070782138187,0.22450938418467437 +national,b600k.cps2023-2024.acs000.s0,county,households,850,0.08826811151156883,0.06081638145126741,0.07000860107884044 +national,b600k.cps2023-2024.acs000.s0,county,owner,850,0.1517574943292643,0.11252278839596795,0.143311577796287 +national,b600k.cps2023-2024.acs000.s0,county,persons_0_17,850,0.2101299837395836,0.1556978619816583,0.1628470211171628 +national,b600k.cps2023-2024.acs000.s0,county,persons_18_64,850,0.11462440211914957,0.0811425115572117,0.09830799978136316 +national,b600k.cps2023-2024.acs000.s0,county,persons_65p,850,0.1891709628085182,0.14411003030682673,0.1647273008511208 +national,b600k.cps2023-2024.acs000.s0,county,persons_in_households,850,0.10525964462597594,0.07242826253109197,0.0806695740889332 +national,b600k.cps2023-2024.acs000.s0,county,persons_male,850,0.10447936427248697,0.07524951793442436,0.08569271421999052 +national,b600k.cps2023-2024.acs000.s0,county,persons_total,850,0.09653635719638558,0.06737335365543407,0.07497035879383328 +national,b600k.cps2023-2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.4819924869747365,0.5011499428401845,0.5480828336968154 +national,b600k.cps2023-2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.4066375278503289,0.32414234585650215,0.39961295150573706 +national,b600k.cps2023-2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.35451622576621006,0.2925154183234935,0.3377649518117794 +national,b600k.cps2023-2024.acs000.s0,county,renter,850,0.32108925891049345,0.2380649003491035,0.3030451079437595 +national,b600k.cps2023-2024.acs000.s0,national,households,1,0.040631761222204237,0.040631761222204237,0.04063176077450957 +national,b600k.cps2023-2024.acs000.s0,national,owner,1,0.039320779934016246,0.039320779934016246,0.04234516572802962 +national,b600k.cps2023-2024.acs000.s0,national,persons_0_17,1,0.06568841610672783,0.06568841610672783,0.027390231881040526 +national,b600k.cps2023-2024.acs000.s0,national,persons_18_64,1,0.014269256840130659,0.014269256840130659,0.02680501507024841 +national,b600k.cps2023-2024.acs000.s0,national,persons_65p,1,0.0005657582419710235,0.0005657582419710235,0.026233676447590164 +national,b600k.cps2023-2024.acs000.s0,national,persons_in_households,1,0.030766573991336744,0.030766573991336744,0.007468807603687385 +national,b600k.cps2023-2024.acs000.s0,national,persons_male,1,0.008252262351349952,0.008252262351349952,0.030408793665966896 +national,b600k.cps2023-2024.acs000.s0,national,persons_total,1,0.005343554633193268,0.005343554633193268,0.017379591291569706 +national,b600k.cps2023-2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.53800422227846,0.53800422227846,0.6562268648260858 +national,b600k.cps2023-2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.1090863993014265,0.1090863993014265,0.12227496863436776 +national,b600k.cps2023-2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.21735491636740306,0.21735491636740306,0.22894074123356356 +national,b600k.cps2023-2024.acs000.s0,national,renter,1,0.007322778077142631,0.007322778077142631,0.0025205865936245436 +national,b600k.cps2023-2024.acs000.s0,state,households,51,0.03880058885955302,0.029877486609536066,0.04016948176038709 +national,b600k.cps2023-2024.acs000.s0,state,owner,51,0.037508274223974764,0.032938858887970594,0.047575326212758874 +national,b600k.cps2023-2024.acs000.s0,state,persons_0_17,51,0.07139074565283368,0.06624560195723926,0.05483953711216379 +national,b600k.cps2023-2024.acs000.s0,state,persons_18_64,51,0.02433389328266441,0.019649874209693993,0.030737259274090257 +national,b600k.cps2023-2024.acs000.s0,state,persons_65p,51,0.023813017407775954,0.008211560198885817,0.03958899754100455 +national,b600k.cps2023-2024.acs000.s0,state,persons_in_households,51,0.030897564398201516,0.02752399020180724,0.019558544514582006 +national,b600k.cps2023-2024.acs000.s0,state,persons_male,51,0.023950344827044716,0.02019577399791625,0.031232583282334508 +national,b600k.cps2023-2024.acs000.s0,state,persons_total,51,0.014489923552418857,0.010663614023361197,0.018964847449262308 +national,b600k.cps2023-2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4515117367745328,0.4443537791378309,0.541622701942078 +national,b600k.cps2023-2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.13863821291624503,0.1237646295342629,0.1416029247645714 +national,b600k.cps2023-2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.22030078593737376,0.21613356811818704,0.21996850492417253 +national,b600k.cps2023-2024.acs000.s0,state,renter,51,0.07623616522488934,0.06322679357335191,0.06435477021533302 +national,b600k.cps2023-2024.acs100.s0,cd,households,436,0.06780531413482804,0.05419836704773337,0.03201891814786413 +national,b600k.cps2023-2024.acs100.s0,cd,owner,436,0.10072486139503938,0.06554970778181754,0.05429203104563203 +national,b600k.cps2023-2024.acs100.s0,cd,persons_0_17,436,0.12865593416463966,0.1064718047724041,0.07857924097754165 +national,b600k.cps2023-2024.acs100.s0,cd,persons_18_64,436,0.06932097981385807,0.05718594777187609,0.04069222534409441 +national,b600k.cps2023-2024.acs100.s0,cd,persons_65p,436,0.09383069187021528,0.07708152180559494,0.05900141255712118 +national,b600k.cps2023-2024.acs100.s0,cd,persons_in_households,436,0.06390567284621224,0.05248706919878206,0.03815058862728164 +national,b600k.cps2023-2024.acs100.s0,cd,persons_male,436,0.06367386683156001,0.05564356485463627,0.045321618142586624 +national,b600k.cps2023-2024.acs100.s0,cd,persons_total,436,0.0595400158914573,0.05265457187748077,0.03817866115212427 +national,b600k.cps2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.1908097293745798,0.17741421534076898,0.1283149673485505 +national,b600k.cps2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.334908729804153,0.28456517378363566,0.31389979158479325 +national,b600k.cps2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.28327866586878203,0.25191508057773415,0.27326254525660193 +national,b600k.cps2023-2024.acs100.s0,cd,renter,436,0.1535855150571525,0.12505938271119815,0.08687767837826281 +national,b600k.cps2023-2024.acs100.s0,county,households,850,0.11758014802519659,0.0825295344224373,0.06786876691051111 +national,b600k.cps2023-2024.acs100.s0,county,owner,850,0.1446333861722108,0.10305318688205636,0.08533779859957384 +national,b600k.cps2023-2024.acs100.s0,county,persons_0_17,850,0.2336120199434144,0.16576767705036477,0.15092560849272915 +national,b600k.cps2023-2024.acs100.s0,county,persons_18_64,850,0.13958157490097223,0.09876154408815388,0.08535920677713327 +national,b600k.cps2023-2024.acs100.s0,county,persons_65p,850,0.17507787485466414,0.13386583123398516,0.11181692901151243 +national,b600k.cps2023-2024.acs100.s0,county,persons_in_households,850,0.1302731111724608,0.09067741622415051,0.07974345026069395 +national,b600k.cps2023-2024.acs100.s0,county,persons_male,850,0.13307876715664493,0.09913267079765418,0.0848549067859619 +national,b600k.cps2023-2024.acs100.s0,county,persons_total,850,0.12438359007900343,0.08925154821315978,0.07768986651702461 +national,b600k.cps2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.2618597379914219,0.22186501604170886,0.17081468563330832 +national,b600k.cps2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4173626906787209,0.3266695372685663,0.3921769114729371 +national,b600k.cps2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.36438553694662074,0.30558963051724075,0.32672405393682935 +national,b600k.cps2023-2024.acs100.s0,county,renter,850,0.23523224686595387,0.17832961194646543,0.15205682831065692 +national,b600k.cps2023-2024.acs100.s0,national,households,1,0.030553584844695274,0.030553584844695274,0.007898100092096693 +national,b600k.cps2023-2024.acs100.s0,national,owner,1,0.052802254119552736,0.052802254119552736,0.009375892152526346 +national,b600k.cps2023-2024.acs100.s0,national,persons_0_17,1,0.07320045264417356,0.07320045264417356,0.03465086915036744 +national,b600k.cps2023-2024.acs100.s0,national,persons_18_64,1,0.022683106787590914,0.022683106787590914,0.021099151615868166 +national,b600k.cps2023-2024.acs100.s0,national,persons_65p,1,0.0001404461695498836,0.0001404461695498836,0.01569357216696269 +national,b600k.cps2023-2024.acs100.s0,national,persons_in_households,1,0.016082471332805586,0.016082471332805586,0.012787431015813356 +national,b600k.cps2023-2024.acs100.s0,national,persons_male,1,0.010548491784949132,0.010548491784949132,0.028925993511865398 +national,b600k.cps2023-2024.acs100.s0,national,persons_total,1,0.0019363671393303385,0.0019363671393303385,0.01737959129168467 +national,b600k.cps2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.16240586758810216,0.16240586758810216,0.11048028880911435 +national,b600k.cps2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.09851572169752405,0.09851572169752405,0.1281570822615306 +national,b600k.cps2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.20806884322756947,0.20806884322756947,0.23410802940612888 +national,b600k.cps2023-2024.acs100.s0,national,renter,1,0.053842726060901895,0.053842726060901895,0.039266486957245474 +national,b600k.cps2023-2024.acs100.s0,state,households,51,0.03216136691150738,0.027128943520879075,0.014483036257314095 +national,b600k.cps2023-2024.acs100.s0,state,owner,51,0.043956856901977856,0.0402621652643649,0.016025862707060336 +national,b600k.cps2023-2024.acs100.s0,state,persons_0_17,51,0.07479845318353526,0.06235625370909042,0.041562306128017895 +national,b600k.cps2023-2024.acs100.s0,state,persons_18_64,51,0.02980549801461339,0.020827325810047644,0.023431882857797973 +national,b600k.cps2023-2024.acs100.s0,state,persons_65p,51,0.01630849156559745,0.007101992020573173,0.0283621353351104 +national,b600k.cps2023-2024.acs100.s0,state,persons_in_households,51,0.019261191901169716,0.015669318630287008,0.017972250831526402 +national,b600k.cps2023-2024.acs100.s0,state,persons_male,51,0.019559518015193317,0.014536775117830242,0.02784736053088848 +national,b600k.cps2023-2024.acs100.s0,state,persons_total,51,0.015740122658653526,0.012975126410714504,0.01888189852316395 +national,b600k.cps2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.15694620043747307,0.16628079793800857,0.09512214865337698 +national,b600k.cps2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.1727086949590483,0.13826751705522128,0.18348344571762085 +national,b600k.cps2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.20423994309887167,0.19067833773584394,0.21014181331630405 +national,b600k.cps2023-2024.acs100.s0,state,renter,51,0.08982736430410553,0.07847696597877879,0.04939571988322804 +national,b600k.cps2024.acs000.s0,cd,households,436,0.05909732925150094,0.047608563337719234,0.04860373422342944 +national,b600k.cps2024.acs000.s0,cd,owner,436,0.1450250439339014,0.08528196579510532,0.14086797245473626 +national,b600k.cps2024.acs000.s0,cd,persons_0_17,436,0.1484597556423358,0.11466113484554954,0.1287218736419662 +national,b600k.cps2024.acs000.s0,cd,persons_18_64,436,0.0658518713971586,0.05289222094897673,0.06368655569089146 +national,b600k.cps2024.acs000.s0,cd,persons_65p,436,0.1349757261225433,0.09390751110777246,0.13475217085653052 +national,b600k.cps2024.acs000.s0,cd,persons_in_households,436,0.06742512053161434,0.05177015510025937,0.05672902969785781 +national,b600k.cps2024.acs000.s0,cd,persons_male,436,0.06545588870838409,0.050269635353718464,0.06347128608512126 +national,b600k.cps2024.acs000.s0,cd,persons_total,436,0.05835452311673779,0.043127644855343726,0.053441021977624 +national,b600k.cps2024.acs000.s0,cd,real_estate_taxes_aggregate,436,0.4675706107416856,0.4921636039427403,0.5512385370971004 +national,b600k.cps2024.acs000.s0,cd,rent_contract_annual_aggregate,436,0.3335740692582731,0.26963743885169367,0.32027836579887575 +national,b600k.cps2024.acs000.s0,cd,rent_gross_annual_aggregate,436,0.293706888207474,0.261080416132075,0.28394427611551737 +national,b600k.cps2024.acs000.s0,cd,renter,436,0.24718375256564035,0.18809954159737574,0.2296633622834789 +national,b600k.cps2024.acs000.s0,county,households,850,0.0900310379084711,0.061904303399174895,0.07032960345071332 +national,b600k.cps2024.acs000.s0,county,owner,850,0.15440931932198357,0.1145931383420031,0.14217725774268836 +national,b600k.cps2024.acs000.s0,county,persons_0_17,850,0.20827475333289738,0.15274614307866086,0.1679169791612588 +national,b600k.cps2024.acs000.s0,county,persons_18_64,850,0.11940227419597083,0.08691026810168125,0.101923904001775 +national,b600k.cps2024.acs000.s0,county,persons_65p,850,0.18556502522978544,0.14177215275149607,0.16532852292906403 +national,b600k.cps2024.acs000.s0,county,persons_in_households,850,0.10969012181027894,0.07983379198078516,0.08620704438537921 +national,b600k.cps2024.acs000.s0,county,persons_male,850,0.10750253406544807,0.07853998533148608,0.08967680931621032 +national,b600k.cps2024.acs000.s0,county,persons_total,850,0.099795575239555,0.07238772784150807,0.07962418337759103 +national,b600k.cps2024.acs000.s0,county,real_estate_taxes_aggregate,850,0.48439125627856705,0.5047991473751721,0.5307062105782046 +national,b600k.cps2024.acs000.s0,county,rent_contract_annual_aggregate,850,0.41179035782052803,0.31993601086778856,0.40670800802871676 +national,b600k.cps2024.acs000.s0,county,rent_gross_annual_aggregate,850,0.35412051091446917,0.2948121360373408,0.33684740200907715 +national,b600k.cps2024.acs000.s0,county,renter,850,0.3238565126651163,0.2338287017246663,0.30476853363678535 +national,b600k.cps2024.acs000.s0,national,households,1,0.04250326675600782,0.04250326675600782,0.042503266231344095 +national,b600k.cps2024.acs000.s0,national,owner,1,0.03205826891998349,0.03205826891998349,0.04010859549479916 +national,b600k.cps2024.acs000.s0,national,persons_0_17,1,0.06129604717228814,0.06129604717228814,0.03288093308216741 +national,b600k.cps2024.acs000.s0,national,persons_18_64,1,0.012211351835314549,0.012211351835314549,0.028643647199171115 +national,b600k.cps2024.acs000.s0,national,persons_65p,1,0.0006813167436588355,0.0006813167436588355,0.03895423703662267 +national,b600k.cps2024.acs000.s0,national,persons_in_households,1,0.031057141260680182,0.031057141260680182,0.007468807602916907 +national,b600k.cps2024.acs000.s0,national,persons_male,1,0.012676270791828216,0.012676270791828216,0.03015050978129372 +national,b600k.cps2024.acs000.s0,national,persons_total,1,0.0056269552971191916,0.0056269552971191916,0.01737959129232118 +national,b600k.cps2024.acs000.s0,national,real_estate_taxes_aggregate,1,0.5389774706546059,0.5389774706546059,0.6395411932654015 +national,b600k.cps2024.acs000.s0,national,rent_contract_annual_aggregate,1,0.08391663082609926,0.08391663082609926,0.098869446080184 +national,b600k.cps2024.acs000.s0,national,rent_gross_annual_aggregate,1,0.1952439108356215,0.1952439108356215,0.20837958115864685 +national,b600k.cps2024.acs000.s0,national,renter,1,0.02763436254682897,0.02763436254682897,0.012242781551081959 +national,b600k.cps2024.acs000.s0,state,households,51,0.04088688904768443,0.03569291353443703,0.0411318324001774 +national,b600k.cps2024.acs000.s0,state,owner,51,0.03893937091307738,0.033556471297507204,0.04737445437548185 +national,b600k.cps2024.acs000.s0,state,persons_0_17,51,0.06951615910491699,0.0696815760109167,0.05938231280038855 +national,b600k.cps2024.acs000.s0,state,persons_18_64,51,0.024586898840412937,0.01793943991452501,0.03622043144080088 +national,b600k.cps2024.acs000.s0,state,persons_65p,51,0.027316550645966962,0.006504385338956131,0.053288532654899204 +national,b600k.cps2024.acs000.s0,state,persons_in_households,51,0.03139765443139715,0.02732098573865823,0.01986143555982416 +national,b600k.cps2024.acs000.s0,state,persons_male,51,0.029379504198897535,0.030072098572305896,0.03069101486431198 +national,b600k.cps2024.acs000.s0,state,persons_total,51,0.016035579076317554,0.012099187004840695,0.018409030751611464 +national,b600k.cps2024.acs000.s0,state,real_estate_taxes_aggregate,51,0.4512187019336541,0.43992733257982414,0.526001522155504 +national,b600k.cps2024.acs000.s0,state,rent_contract_annual_aggregate,51,0.12964602178372334,0.12410094052567115,0.12759779821473993 +national,b600k.cps2024.acs000.s0,state,rent_gross_annual_aggregate,51,0.2029127037136362,0.20723349125761953,0.20252115687966885 +national,b600k.cps2024.acs000.s0,state,renter,51,0.08443706429886408,0.07160580520127227,0.07151289876278472 +national,b600k.cps2024.acs050.s0,cd,households,436,0.060417038644129756,0.04756782532969223,0.0378119201009434 +national,b600k.cps2024.acs050.s0,cd,owner,436,0.10953383972115097,0.06543359326777926,0.08940336052967823 +national,b600k.cps2024.acs050.s0,cd,persons_0_17,436,0.13215089825317164,0.099725653096252,0.09558272273817567 +national,b600k.cps2024.acs050.s0,cd,persons_18_64,436,0.06172772625320176,0.050898414569317374,0.0492840182173179 +national,b600k.cps2024.acs050.s0,cd,persons_65p,436,0.0990630614571277,0.07792831718515728,0.08642160122209239 +national,b600k.cps2024.acs050.s0,cd,persons_in_households,436,0.05998006270741012,0.04632203816170904,0.04333922551642038 +national,b600k.cps2024.acs050.s0,cd,persons_male,436,0.05790491456017837,0.04777316444957812,0.05095400388283775 +national,b600k.cps2024.acs050.s0,cd,persons_total,436,0.053488301942434445,0.040307339822974034,0.04227227158393402 +national,b600k.cps2024.acs050.s0,cd,real_estate_taxes_aggregate,436,0.2917190005815743,0.30568121645455637,0.2935751668108753 +national,b600k.cps2024.acs050.s0,cd,rent_contract_annual_aggregate,436,0.3413175120663349,0.2892356852179321,0.31815952267130265 +national,b600k.cps2024.acs050.s0,cd,rent_gross_annual_aggregate,436,0.29075794180238057,0.25910342396783614,0.2756038510261207 +national,b600k.cps2024.acs050.s0,cd,renter,436,0.18245663810772425,0.1398051115706993,0.1439488670291109 +national,b600k.cps2024.acs050.s0,county,households,850,0.10363682933519934,0.07391419462675249,0.07134703071043064 +national,b600k.cps2024.acs050.s0,county,owner,850,0.1405702981820702,0.10061267070616106,0.10953933697417954 +national,b600k.cps2024.acs050.s0,county,persons_0_17,850,0.22228506606786533,0.16098333773263648,0.15324594300906216 +national,b600k.cps2024.acs050.s0,county,persons_18_64,850,0.12643048055324443,0.09165975210808655,0.09387407087829701 +national,b600k.cps2024.acs050.s0,county,persons_65p,850,0.1749050469076079,0.12670165049132026,0.13138329285662573 +national,b600k.cps2024.acs050.s0,county,persons_in_households,850,0.11786324543067253,0.07605337333619458,0.08305863152062937 +national,b600k.cps2024.acs050.s0,county,persons_male,850,0.1193691512544531,0.08123402674132005,0.08620642395998672 +national,b600k.cps2024.acs050.s0,county,persons_total,850,0.11245420997054399,0.07685572430901802,0.07985714392887511 +national,b600k.cps2024.acs050.s0,county,real_estate_taxes_aggregate,850,0.3329466717722224,0.33315618298379884,0.30599337024901835 +national,b600k.cps2024.acs050.s0,county,rent_contract_annual_aggregate,850,0.41785475831498964,0.3198194811778282,0.39561522450692965 +national,b600k.cps2024.acs050.s0,county,rent_gross_annual_aggregate,850,0.35893926362831857,0.3033380158662424,0.32499046551842276 +national,b600k.cps2024.acs050.s0,county,renter,850,0.2696228361468962,0.2013575724282055,0.212857145745422 +national,b600k.cps2024.acs050.s0,national,households,1,0.036884336760090855,0.036884336760090855,0.024115482131001297 +national,b600k.cps2024.acs050.s0,national,owner,1,0.04355352348319061,0.04355352348319061,0.023264152060971526 +national,b600k.cps2024.acs050.s0,national,persons_0_17,1,0.06689771847485369,0.06689771847485369,0.03600752374625699 +national,b600k.cps2024.acs050.s0,national,persons_18_64,1,0.01800885291452288,0.01800885291452288,0.02417241595557154 +national,b600k.cps2024.acs050.s0,national,persons_65p,1,0.0005189519491646605,0.0005189519491646605,0.027642849392773294 +national,b600k.cps2024.acs050.s0,national,persons_in_households,1,0.022606681666048314,0.022606681666048314,0.00375341199422468 +national,b600k.cps2024.acs050.s0,national,persons_male,1,0.011736187305509651,0.011736187305509651,0.02929129328905722 +national,b600k.cps2024.acs050.s0,national,persons_total,1,0.0033469749872814224,0.0033469749872814224,0.017379591291849055 +national,b600k.cps2024.acs050.s0,national,real_estate_taxes_aggregate,1,0.31093766574478404,0.31093766574478404,0.3442077419912742 +national,b600k.cps2024.acs050.s0,national,rent_contract_annual_aggregate,1,0.08177982237680421,0.08177982237680421,0.11117040245830881 +national,b600k.cps2024.acs050.s0,national,rent_gross_annual_aggregate,1,0.19336677861293006,0.19336677861293006,0.21918566047517046 +national,b600k.cps2024.acs050.s0,national,renter,1,0.014365266701905157,0.014365266701905157,0.014194095837008477 +national,b600k.cps2024.acs050.s0,state,households,51,0.03308787787781821,0.024449555735203066,0.027163858774878504 +national,b600k.cps2024.acs050.s0,state,owner,51,0.0386284100623994,0.030988694049454604,0.02920626243099388 +national,b600k.cps2024.acs050.s0,state,persons_0_17,51,0.06993743575288588,0.0586568028132086,0.05148227764742262 +national,b600k.cps2024.acs050.s0,state,persons_18_64,51,0.02786054935240013,0.018609060347731,0.029377604727982252 +national,b600k.cps2024.acs050.s0,state,persons_65p,51,0.022254570950417447,0.006689357272505792,0.038644476717323954 +national,b600k.cps2024.acs050.s0,state,persons_in_households,51,0.02256009904113447,0.020294824169693713,0.017402341813074974 +national,b600k.cps2024.acs050.s0,state,persons_male,51,0.02242409587889977,0.020488480959045725,0.02993045326881342 +national,b600k.cps2024.acs050.s0,state,persons_total,51,0.015363711485070462,0.010554016302630339,0.01932238423550864 +national,b600k.cps2024.acs050.s0,state,real_estate_taxes_aggregate,51,0.302742201720904,0.3135821487650572,0.2831545117659953 +national,b600k.cps2024.acs050.s0,state,rent_contract_annual_aggregate,51,0.14846537040445987,0.12415822609562564,0.14725449826944895 +national,b600k.cps2024.acs050.s0,state,rent_gross_annual_aggregate,51,0.18973032593386593,0.19898225675447806,0.1951523975767883 +national,b600k.cps2024.acs050.s0,state,renter,51,0.08111740510758178,0.06264600053489816,0.05321330049212731 +national,b600k.cps2024.acs100.s0,cd,households,436,0.06836556991120657,0.05543132498583103,0.030061419843700195 +national,b600k.cps2024.acs100.s0,cd,owner,436,0.09037464503359825,0.06428909433980756,0.04509465449094906 +national,b600k.cps2024.acs100.s0,cd,persons_0_17,436,0.13139976136405257,0.10654106299461283,0.07972314206638158 +national,b600k.cps2024.acs100.s0,cd,persons_18_64,436,0.074909721670411,0.06708131827666372,0.040270052483086245 +national,b600k.cps2024.acs100.s0,cd,persons_65p,436,0.09092991706455276,0.07424845194229025,0.0553797197180921 +national,b600k.cps2024.acs100.s0,cd,persons_in_households,436,0.06908750527983176,0.05514488946392326,0.03873134255766415 +national,b600k.cps2024.acs100.s0,cd,persons_male,436,0.07048912770458814,0.05606773341627455,0.044717927558343314 +national,b600k.cps2024.acs100.s0,cd,persons_total,436,0.06655568444075587,0.05522348181023063,0.038299130155592116 +national,b600k.cps2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.1471910299907742,0.11656752417202526,0.10919882484157147 +national,b600k.cps2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3380963467064058,0.28173250425454355,0.3160626471752382 +national,b600k.cps2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.28703845245474396,0.25589066960101836,0.27585730257839186 +national,b600k.cps2024.acs100.s0,cd,renter,436,0.14381582560798314,0.12773777521579077,0.07901117774209547 +national,b600k.cps2024.acs100.s0,county,households,850,0.12381071699874424,0.09135951089552667,0.06689653047543878 +national,b600k.cps2024.acs100.s0,county,owner,850,0.14382721026787879,0.10666246008098866,0.08065964061352399 +national,b600k.cps2024.acs100.s0,county,persons_0_17,850,0.24242257180622614,0.18137279657540306,0.15509941710625452 +national,b600k.cps2024.acs100.s0,county,persons_18_64,850,0.14791174039715427,0.10991508946188644,0.08543760291011471 +national,b600k.cps2024.acs100.s0,county,persons_65p,850,0.17206772529914854,0.12774787965760329,0.10929178763468612 +national,b600k.cps2024.acs100.s0,county,persons_in_households,850,0.14020862700111672,0.101566768268216,0.08135099465475124 +national,b600k.cps2024.acs100.s0,county,persons_male,850,0.13903278360958204,0.10073546907349962,0.08556084387389476 +national,b600k.cps2024.acs100.s0,county,persons_total,850,0.13358457245412128,0.09801223354153532,0.07847623406391573 +national,b600k.cps2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.2274208273352574,0.17117299034518868,0.16153074306399925 +national,b600k.cps2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4246075309029734,0.3390113737134252,0.3958742716723528 +national,b600k.cps2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.37124731922091225,0.31098764083152186,0.3284680199300558 +national,b600k.cps2024.acs100.s0,county,renter,850,0.2398971611681569,0.19436443367031836,0.1488208730998836 +national,b600k.cps2024.acs100.s0,national,households,1,0.023490303286665418,0.023490303286665418,0.004032550306107907 +national,b600k.cps2024.acs100.s0,national,owner,1,0.05092060956542508,0.05092060956542508,0.005330971097048906 +national,b600k.cps2024.acs100.s0,national,persons_0_17,1,0.0730549650458692,0.0730549650458692,0.036277025047341385 +national,b600k.cps2024.acs100.s0,national,persons_18_64,1,0.02545302334982694,0.02545302334982694,0.020396038644001573 +national,b600k.cps2024.acs100.s0,national,persons_65p,1,0.00017641218693276587,0.00017641218693276587,0.015265749505787189 +national,b600k.cps2024.acs100.s0,national,persons_in_households,1,0.01065044079448586,0.01065044079448586,0.015181688429502196 +national,b600k.cps2024.acs100.s0,national,persons_male,1,0.013229820178755416,0.013229820178755416,0.028476246299673852 +national,b600k.cps2024.acs100.s0,national,persons_total,1,0.0002215160825327939,0.0002215160825327939,0.017379591291975412 +national,b600k.cps2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.034656919004043205,0.034656919004043205,0.0444345280130821 +national,b600k.cps2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.11077564161350498,0.11077564161350498,0.12799956725070355 +national,b600k.cps2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.21883887304914607,0.21883887304914607,0.2339696564497328 +national,b600k.cps2024.acs100.s0,national,renter,1,0.07138872921839172,0.07138872921839172,0.04398605432062964 +national,b600k.cps2024.acs100.s0,state,households,51,0.03062167999321035,0.025758994726909158,0.012551797889670965 +national,b600k.cps2024.acs100.s0,state,owner,51,0.04369508094307644,0.0367829959836869,0.01450316633318095 +national,b600k.cps2024.acs100.s0,state,persons_0_17,51,0.07373695008595113,0.06489127136915863,0.0418250264669515 +national,b600k.cps2024.acs100.s0,state,persons_18_64,51,0.032459607172187696,0.021682165664307314,0.024308408417819696 +national,b600k.cps2024.acs100.s0,state,persons_65p,51,0.01530637230565709,0.007313734524350135,0.02918024219017552 +national,b600k.cps2024.acs100.s0,state,persons_in_households,51,0.018691105580198885,0.014639453547372148,0.018703698460971988 +national,b600k.cps2024.acs100.s0,state,persons_male,51,0.021631672335317223,0.01721863933655879,0.026977597799269778 +national,b600k.cps2024.acs100.s0,state,persons_total,51,0.0173502368348526,0.013773701343673846,0.019067969513008286 +national,b600k.cps2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.06211923753598985,0.052101103123615586,0.04640083779828414 +national,b600k.cps2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.18746604724007823,0.14932282339320377,0.1896387156641729 +national,b600k.cps2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.20861021849375427,0.2025538023502695,0.2128487121032932 +national,b600k.cps2024.acs100.s0,state,renter,51,0.10125561946588531,0.09021066812338849,0.05368877525129426 +national,natural.cps2022-2023-2024.acs100.s0,cd,households,436,0.0940861512139551,0.06574455851970415,0.07702745456319936 +national,natural.cps2022-2023-2024.acs100.s0,cd,owner,436,0.1617246211926523,0.10186547151596559,0.1551484793891346 +national,natural.cps2022-2023-2024.acs100.s0,cd,persons_0_17,436,0.16416887915882633,0.12879122138066348,0.12072268393512044 +national,natural.cps2022-2023-2024.acs100.s0,cd,persons_18_64,436,0.07929621495227553,0.05999238176547872,0.05917639471386573 +national,natural.cps2022-2023-2024.acs100.s0,cd,persons_65p,436,0.1735551088590183,0.13548431704630187,0.14635989769733457 +national,natural.cps2022-2023-2024.acs100.s0,cd,persons_in_households,436,0.0736388645287251,0.053955750342474296,0.05081100721582784 +national,natural.cps2022-2023-2024.acs100.s0,cd,persons_male,436,0.07772691911257665,0.06256886430492933,0.0586641436442937 +national,natural.cps2022-2023-2024.acs100.s0,cd,persons_total,436,0.06921721938357514,0.051696537290746095,0.05043010613657911 +national,natural.cps2022-2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.4887181008840391,0.5125304640191821,0.5774003843679367 +national,natural.cps2022-2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.32934606519784043,0.2628567378762088,0.31082246755836407 +national,natural.cps2022-2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.302368030257167,0.2802810567632519,0.28236030841940746 +national,natural.cps2022-2023-2024.acs100.s0,cd,renter,436,0.26567339534292084,0.21906476739675312,0.24081713613269728 +national,natural.cps2022-2023-2024.acs100.s0,county,households,850,0.15289533365292338,0.1148650269898827,0.11263403490092005 +national,natural.cps2022-2023-2024.acs100.s0,county,owner,850,0.20518943313777951,0.15593772948201573,0.167805318211452 +national,natural.cps2022-2023-2024.acs100.s0,county,persons_0_17,850,0.2647697688695239,0.19250001046055398,0.1809033074472681 +national,natural.cps2022-2023-2024.acs100.s0,county,persons_18_64,850,0.17044270962634386,0.12366278099261066,0.11595858180255403 +national,natural.cps2022-2023-2024.acs100.s0,county,persons_65p,850,0.27772690464147604,0.2215095777878296,0.20499269577599868 +national,natural.cps2022-2023-2024.acs100.s0,county,persons_in_households,850,0.14948732388531058,0.10100988634772948,0.09871282288235243 +national,natural.cps2022-2023-2024.acs100.s0,county,persons_male,850,0.1559952839307883,0.11344063991155208,0.1072620855597396 +national,natural.cps2022-2023-2024.acs100.s0,county,persons_total,850,0.14317033374904775,0.09899440446445183,0.09804707185198311 +national,natural.cps2022-2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.5374150597741382,0.5595407736372762,0.5759967143315385 +national,natural.cps2022-2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4290314132601668,0.35200836582169426,0.40674062383306964 +national,natural.cps2022-2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.3991972898462411,0.3500836963628263,0.3555046169024228 +national,natural.cps2022-2023-2024.acs100.s0,county,renter,850,0.36551925434580185,0.3011354035453164,0.31997071274398775 +national,natural.cps2022-2023-2024.acs100.s0,national,households,1,0.040387780509507705,0.040387780509507705,0.04038778011146347 +national,natural.cps2022-2023-2024.acs100.s0,national,owner,1,0.047821939017516656,0.047821939017516656,0.045042942663381706 +national,natural.cps2022-2023-2024.acs100.s0,national,persons_0_17,1,0.06299104550567233,0.06299104550567233,0.02109426309341987 +national,natural.cps2022-2023-2024.acs100.s0,national,persons_18_64,1,0.013548765087756631,0.013548765087756631,0.02674863655270408 +national,natural.cps2022-2023-2024.acs100.s0,national,persons_65p,1,0.00051236910987619,0.00051236910987619,0.01854702634614402 +national,natural.cps2022-2023-2024.acs100.s0,national,persons_in_households,1,0.030630701130194362,0.030630701130194362,0.007468807603571669 +national,natural.cps2022-2023-2024.acs100.s0,national,persons_male,1,0.0075086151630289685,0.0075086151630289685,0.030890456469580847 +national,natural.cps2022-2023-2024.acs100.s0,national,persons_total,1,0.005211032965683111,0.005211032965683111,0.017379591291682567 +national,natural.cps2022-2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.5422849392890163,0.5422849392890163,0.6659411721508848 +national,natural.cps2022-2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.12134149010297295,0.12134149010297295,0.13110826309032833 +national,natural.cps2022-2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.22812070393398717,0.22812070393398717,0.2367005671839316 +national,natural.cps2022-2023-2024.acs100.s0,national,renter,1,0.00691349753312386,0.00691349753312386,0.0022442128363368394 +national,natural.cps2022-2023-2024.acs100.s0,state,households,51,0.038318493790818045,0.02820356831038204,0.03881877297157921 +national,natural.cps2022-2023-2024.acs100.s0,state,owner,51,0.04249403628805439,0.043516763829469084,0.04937364843674731 +national,natural.cps2022-2023-2024.acs100.s0,state,persons_0_17,51,0.07042721153114621,0.06840302280161081,0.0512512979358957 +national,natural.cps2022-2023-2024.acs100.s0,state,persons_18_64,51,0.024052687422585945,0.018254565779735065,0.029082605581339526 +national,natural.cps2022-2023-2024.acs100.s0,state,persons_65p,51,0.024896266248447867,0.00819881790644387,0.033742093722682304 +national,natural.cps2022-2023-2024.acs100.s0,state,persons_in_households,51,0.03046584486827954,0.026872215379890964,0.02046149837401532 +national,natural.cps2022-2023-2024.acs100.s0,state,persons_male,51,0.02138893128969123,0.014333843156608185,0.030540574782716583 +national,natural.cps2022-2023-2024.acs100.s0,state,persons_total,51,0.015168681432916812,0.010650933973115529,0.017719590215261614 +national,natural.cps2022-2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.45712535524917564,0.45119982875088616,0.5512094530501028 +national,natural.cps2022-2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.14279060069746713,0.13879167255458336,0.146856471666088 +national,natural.cps2022-2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.23112118107582924,0.20989011222655918,0.23190637634799494 +national,natural.cps2022-2023-2024.acs100.s0,state,renter,51,0.0855461816485221,0.07767980868045872,0.058740079396226365 +national,natural.cps2023-2024.acs100.s0,cd,households,436,0.10106441250592343,0.0691754582259759,0.08277502694406316 +national,natural.cps2023-2024.acs100.s0,cd,owner,436,0.16709611059539048,0.10228078156257464,0.15894818149309695 +national,natural.cps2023-2024.acs100.s0,cd,persons_0_17,436,0.18153964245677331,0.14820195869176417,0.1314240580340637 +national,natural.cps2023-2024.acs100.s0,cd,persons_18_64,436,0.08905840178024187,0.0689832388385194,0.06701928843575958 +national,natural.cps2023-2024.acs100.s0,cd,persons_65p,436,0.19158407862067586,0.14275905132196853,0.15607458611058003 +national,natural.cps2023-2024.acs100.s0,cd,persons_in_households,436,0.08539461913169916,0.06785050364792317,0.0588039890715151 +national,natural.cps2023-2024.acs100.s0,cd,persons_male,436,0.08883066277750679,0.07348470893882525,0.06519931740039178 +national,natural.cps2023-2024.acs100.s0,cd,persons_total,436,0.08009736533901184,0.06012325001506546,0.05778904881748221 +national,natural.cps2023-2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.4811295568261527,0.515580210790958,0.5708461692628187 +national,natural.cps2023-2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3382567440188225,0.2925659682399142,0.31372344832396415 +national,natural.cps2023-2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.30901330189169773,0.278408263956922,0.2819052309567561 +national,natural.cps2023-2024.acs100.s0,cd,renter,436,0.27903238189625335,0.2148945444582656,0.24063252735457533 +national,natural.cps2023-2024.acs100.s0,county,households,850,0.17924155604206465,0.13545377726451135,0.12839005773406914 +national,natural.cps2023-2024.acs100.s0,county,owner,850,0.22157094220528809,0.16299887334000743,0.18183632780875766 +national,natural.cps2023-2024.acs100.s0,county,persons_0_17,850,0.30398011485020576,0.23142604743680217,0.20671475325314057 +national,natural.cps2023-2024.acs100.s0,county,persons_18_64,850,0.19326126769492716,0.14491829740130652,0.13482870982268952 +national,natural.cps2023-2024.acs100.s0,county,persons_65p,850,0.3136897944738122,0.26414511730300844,0.22583543516884713 +national,natural.cps2023-2024.acs100.s0,county,persons_in_households,850,0.1779037098562041,0.12877545164347742,0.11802989076874319 +national,natural.cps2023-2024.acs100.s0,county,persons_male,850,0.1877993443190246,0.14294947443916134,0.12467915689743747 +national,natural.cps2023-2024.acs100.s0,county,persons_total,850,0.17156523092462525,0.12721625418180332,0.1159027429880289 +national,natural.cps2023-2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.5599010887380488,0.577191177332645,0.5805521226553558 +national,natural.cps2023-2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.4516505467791954,0.38434084365920984,0.4183083479274824 +national,natural.cps2023-2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.4245469829358094,0.37832470260263806,0.36442305605289327 +national,natural.cps2023-2024.acs100.s0,county,renter,850,0.39447863434377267,0.3279719625343773,0.3377028256883096 +national,natural.cps2023-2024.acs100.s0,national,households,1,0.04063176100183833,0.04063176100183833,0.04063176077420849 +national,natural.cps2023-2024.acs100.s0,national,owner,1,0.03910054989378656,0.03910054989378656,0.04234516572780774 +national,natural.cps2023-2024.acs100.s0,national,persons_0_17,1,0.06598315358667897,0.06598315358667897,0.027390231881191725 +national,natural.cps2023-2024.acs100.s0,national,persons_18_64,1,0.013844301637839413,0.013844301637839413,0.026805015070435673 +national,natural.cps2023-2024.acs100.s0,national,persons_65p,1,0.0005456921065300877,0.0005456921065300877,0.026233676447537487 +national,natural.cps2023-2024.acs100.s0,national,persons_in_households,1,0.031098893094690636,0.031098893094690636,0.007468807603658995 +national,natural.cps2023-2024.acs100.s0,national,persons_male,1,0.008021747520744997,0.008021747520744997,0.030408793665987435 +national,natural.cps2023-2024.acs100.s0,national,persons_total,1,0.005667677356095154,0.005667677356095154,0.017379591291597395 +national,natural.cps2023-2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.5382698858638026,0.5382698858638026,0.6562268648260742 +national,natural.cps2023-2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.11042450970658219,0.11042450970658219,0.1222749686344348 +national,natural.cps2023-2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.21853041254248845,0.21853041254248845,0.22894074123362246 +national,natural.cps2023-2024.acs100.s0,national,renter,1,0.00760834928444179,0.00760834928444179,0.0025205865935970695 +national,natural.cps2023-2024.acs100.s0,state,households,51,0.03892480418853457,0.033386268817317,0.04016948176038618 +national,natural.cps2023-2024.acs100.s0,state,owner,51,0.037140029606045344,0.03403047399581731,0.0475753262127579 +national,natural.cps2023-2024.acs100.s0,state,persons_0_17,51,0.07138264949357123,0.0640949948730007,0.05483953711216384 +national,natural.cps2023-2024.acs100.s0,state,persons_18_64,51,0.024266579978822797,0.019554560275549325,0.030737259274090486 +national,natural.cps2023-2024.acs100.s0,state,persons_65p,51,0.02363072959238116,0.009289369884753719,0.039588997541004305 +national,natural.cps2023-2024.acs100.s0,state,persons_in_households,51,0.031087925100481917,0.027283123847888717,0.019558544514582797 +national,natural.cps2023-2024.acs100.s0,state,persons_male,51,0.02386522852775628,0.018048906238047505,0.031232583282333474 +national,natural.cps2023-2024.acs100.s0,state,persons_total,51,0.014497218592895347,0.010943259872457428,0.01896484744926104 +national,natural.cps2023-2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.45131152018260395,0.44809849525360973,0.5416227019420785 +national,natural.cps2023-2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.14001723367411703,0.1227372938116644,0.14160292476457131 +national,natural.cps2023-2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.22166945049014553,0.22092739571395786,0.2199685049241719 +national,natural.cps2023-2024.acs100.s0,state,renter,51,0.0759305353335019,0.06560938904505627,0.06435477021533247 +national,natural.cps2024.acs100.s0,cd,households,436,0.13023985075635885,0.09840600792805938,0.09485650794965793 +national,natural.cps2024.acs100.s0,cd,owner,436,0.18989697611617315,0.13405599008291005,0.16382697748832892 +national,natural.cps2024.acs100.s0,cd,persons_0_17,436,0.22870855399480294,0.16639623834731154,0.14777727883399977 +national,natural.cps2024.acs100.s0,cd,persons_18_64,436,0.12959972647317256,0.10667930273548616,0.08294160725513632 +national,natural.cps2024.acs100.s0,cd,persons_65p,436,0.23050962583229342,0.1813783408928991,0.18024911975409463 +national,natural.cps2024.acs100.s0,cd,persons_in_households,436,0.1226329072792917,0.10393474531785367,0.06904594523875002 +national,natural.cps2024.acs100.s0,cd,persons_male,436,0.12492491585447374,0.10684373811238065,0.07885285265254408 +national,natural.cps2024.acs100.s0,cd,persons_total,436,0.11787076362377015,0.09841640018629097,0.06848544826429406 +national,natural.cps2024.acs100.s0,cd,real_estate_taxes_aggregate,436,0.5092146861209821,0.5565789508978605,0.5633972274948349 +national,natural.cps2024.acs100.s0,cd,rent_contract_annual_aggregate,436,0.3666762653904068,0.30144804687329496,0.3259537712970768 +national,natural.cps2024.acs100.s0,cd,rent_gross_annual_aggregate,436,0.3362638184767631,0.30321040297631235,0.28928162032719945 +national,natural.cps2024.acs100.s0,cd,renter,436,0.30945864990487937,0.24322146856614982,0.26236095878741444 +national,natural.cps2024.acs100.s0,county,households,850,0.2272709288486537,0.16357191911402108,0.15704041939673816 +national,natural.cps2024.acs100.s0,county,owner,850,0.28372731793828543,0.22618733733591134,0.2061870685621213 +national,natural.cps2024.acs100.s0,county,persons_0_17,850,0.38633831952390585,0.3232762081974058,0.2581973448995865 +national,natural.cps2024.acs100.s0,county,persons_18_64,850,0.25473469210615435,0.179983060786002,0.17287164263315008 +national,natural.cps2024.acs100.s0,county,persons_65p,850,0.3857653634431159,0.30888211494789,0.2717549856453685 +national,natural.cps2024.acs100.s0,county,persons_in_households,850,0.23420014951964926,0.16423304659580204,0.14800136876415262 +national,natural.cps2024.acs100.s0,county,persons_male,850,0.2488649386510056,0.1830849051416803,0.15951010376184974 +national,natural.cps2024.acs100.s0,county,persons_total,850,0.22950581296867262,0.16418984217847665,0.1444797641695114 +national,natural.cps2024.acs100.s0,county,real_estate_taxes_aggregate,850,0.6092951915819063,0.6344647408350037,0.5894351449274059 +national,natural.cps2024.acs100.s0,county,rent_contract_annual_aggregate,850,0.485318467419899,0.4261064953388414,0.44581404382435347 +national,natural.cps2024.acs100.s0,county,rent_gross_annual_aggregate,850,0.4594888753297135,0.43060638980878196,0.4024978514520762 +national,natural.cps2024.acs100.s0,county,renter,850,0.4437223040625908,0.3857529881829422,0.3615559908221512 +national,natural.cps2024.acs100.s0,national,households,1,0.042503266320651725,0.042503266320651725,0.042503266232261264 +national,natural.cps2024.acs100.s0,national,owner,1,0.03207377080456342,0.03207377080456342,0.040108595495469086 +national,natural.cps2024.acs100.s0,national,persons_0_17,1,0.060973799161126926,0.060973799161126926,0.03288093308224219 +national,natural.cps2024.acs100.s0,national,persons_18_64,1,0.01194111349940154,0.01194111349940154,0.02864364719867025 +national,natural.cps2024.acs100.s0,national,persons_65p,1,0.0004552964102374369,0.0004552964102374369,0.03895423703666744 +national,natural.cps2024.acs100.s0,national,persons_in_households,1,0.031195791102209512,0.031195791102209512,0.007468807603635457 +national,natural.cps2024.acs100.s0,national,persons_male,1,0.012817210793962822,0.012817210793962822,0.030150509780975852 +national,natural.cps2024.acs100.s0,national,persons_total,1,0.005762185453053213,0.005762185453053213,0.017379591291620353 +national,natural.cps2024.acs100.s0,national,real_estate_taxes_aggregate,1,0.5396339018555558,0.5396339018555558,0.639541193265433 +national,natural.cps2024.acs100.s0,national,rent_contract_annual_aggregate,1,0.08548604101616518,0.08548604101616518,0.09886944608012654 +national,natural.cps2024.acs100.s0,national,rent_gross_annual_aggregate,1,0.19662259802649487,0.19662259802649487,0.2083795811585964 +national,natural.cps2024.acs100.s0,national,renter,1,0.027564154707477938,0.027564154707477938,0.012242781550831461 +national,natural.cps2024.acs100.s0,state,households,51,0.04066451396715349,0.03319829184374662,0.04113183240017889 +national,natural.cps2024.acs100.s0,state,owner,51,0.03901313955152319,0.03533230409476756,0.04737445437547842 +national,natural.cps2024.acs100.s0,state,persons_0_17,51,0.06931114951412531,0.07063671170534119,0.05938231280038797 +national,natural.cps2024.acs100.s0,state,persons_18_64,51,0.02444708532830795,0.018091443919835616,0.036220431440798125 +national,natural.cps2024.acs100.s0,state,persons_65p,51,0.027182267685173175,0.0062413498194037334,0.05328853265490045 +national,natural.cps2024.acs100.s0,state,persons_in_households,51,0.03145159495528121,0.02801499840026266,0.019861435559825478 +national,natural.cps2024.acs100.s0,state,persons_male,51,0.02940261752553699,0.02895042084661409,0.030691014864309484 +national,natural.cps2024.acs100.s0,state,persons_total,51,0.015848376085106444,0.011930523023124053,0.018409030751607942 +national,natural.cps2024.acs100.s0,state,real_estate_taxes_aggregate,51,0.45083465513064636,0.4354481587917564,0.5260015221555046 +national,natural.cps2024.acs100.s0,state,rent_contract_annual_aggregate,51,0.13031814607011133,0.12749188878570464,0.1275977982147394 +national,natural.cps2024.acs100.s0,state,rent_gross_annual_aggregate,51,0.20338576184216023,0.21000953309297338,0.20252115687966973 +national,natural.cps2024.acs100.s0,state,renter,51,0.0836061774399151,0.07037375308913235,0.0715128987627851 diff --git a/experiments/us-support-mix-bakeoff-20260930/acs_truth.json b/experiments/us-support-mix-bakeoff-20260930/acs_truth.json new file mode 100644 index 0000000000..9d34511f96 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/acs_truth.json @@ -0,0 +1,71 @@ +{ + "cells": { + "households": [ + "B25003_E001" + ], + "owner": [ + "B25003_E002" + ], + "persons_0_17": [ + "B01001_E003", + "B01001_E004", + "B01001_E005", + "B01001_E006", + "B01001_E027", + "B01001_E028", + "B01001_E029", + "B01001_E030" + ], + "persons_65p": [ + "B01001_E020", + "B01001_E021", + "B01001_E022", + "B01001_E023", + "B01001_E024", + "B01001_E025", + "B01001_E044", + "B01001_E045", + "B01001_E046", + "B01001_E047", + "B01001_E048", + "B01001_E049" + ], + "persons_in_households": [ + "B25008_E001" + ], + "persons_male": [ + "B01001_E002" + ], + "persons_total": [ + "B01003_E001" + ], + "real_estate_taxes_aggregate": [ + "B25090_E001" + ], + "rent_contract_monthly_aggregate": [ + "B25060_E001" + ], + "rent_gross_monthly_aggregate": [ + "B25065_E001" + ], + "renter": [ + "B25003_E003" + ] + }, + "files_sha256": { + "acsdt1y2024-b01001.dat": "84db6a3a8eda54d882b9a5e6a5bb48864fcbb573a262127ed026ae5fb6d6953e", + "acsdt1y2024-b01003.dat": "3f04d8c2ad77dab54085f014b795c33c19463eede4539e110247bb329d1025fd", + "acsdt1y2024-b25003.dat": "944b9d7aa807cc32c50a50b37af0afac50db914f02dc68bafa628e4227a496ad", + "acsdt1y2024-b25008.dat": "6e8e40d7679c47b90df6504c449bde6b28c4384c329b68af0dd436c6943418ca", + "acsdt1y2024-b25060.dat": "aa6d70941599febec9c35e60d8692df6bbc2c01146d2d18d912d9bd24dbfd457", + "acsdt1y2024-b25065.dat": "e17f8ebae8941b0f7466d0e3cdad5cca6425b000ab88d001ddac192bce540f0e", + "acsdt1y2024-b25090.dat": "60f95c0745c34d9bd9d4dfca86d09947f463ef61c76d0e525b0b4b80a018810b" + }, + "rows_by_level": { + "cd": 5232, + "county": 10200, + "national": 12, + "state": 612 + }, + "source": "ACS 2024 1-year table-based summary file (Census), https://www2.census.gov/programs-surveys/acs/summary_file/2024/table-based-SF/" +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/arms.csv b/experiments/us-support-mix-bakeoff-20260930/arms.csv new file mode 100644 index 0000000000..94712e66ad --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/arms.csv @@ -0,0 +1,61 @@ +arm,product,budget,cps_years,acs_fill_share,seed,acs,clones,cps,rows_acs,rows_cps_physical,rows_total,rescored,loss_1000,loss_final,distinct_households,ess_cd_distinct_median,ess_cd_distinct_p10,ess_distinct_households,ess_distinct_households_initial,ess_rows,ess_rows_initial,ess_source_records,train_loss_final,train_targets,runtime_epochs,runtime_peak_rss_gb,runtime_solve_s,runtime_threads,runtime_wall_s,report_report.spm_poor_children,report_report.spm_poor_persons,report_spm_child_rate,report_spm_rate,runtime_rescore_peak_rss_gb,runtime_rescore_wall_s,runtime_restored +b1200k.cps0.acs100.s0,local,1200000,0,1.0,0,1200000,0,0,1200000,0,1200000,False,0.07103973627090454,0.0673326700925827,1200000,636.5990995208797,459.6782619090842,272607.14156716655,637875.3901337923,272607.14156716655,637875.3901337923,272607.14156716655,0.0673326700925827,28117,1500,13.81,1863.2,4,1886.3,9706792.913847022,43565989.28294736,0.12262800619806784,0.1296146310854488,,, +b1200k.cps2022-2023-2024.acs000.s0,local,1200000,3,0.0,0,0,1031148,168852,0,2508197,2508197,False,0.0505693256855011,0.048716843128204346,130294,748.4166677718274,546.7182397113581,54291.8721808348,86558.24850894252,623489.3470239063,1763224.2814842558,434099.0452579522,0.048716843128204346,28120,1500,27.87,3290.7,4,3332.2,11988965.648844972,47089390.14461281,0.15666657007852755,0.1398509828547955,,, +b1200k.cps2022-2023-2024.acs100.s0,local,1200000,3,1.0,0,1031148,0,168852,1031148,352932,1384080,False,0.06497742980718613,0.06211160123348236,1161442,755.6606664571596,564.4997279533579,276474.1544207648,634911.9042601348,324232.6203824569,701288.0088424678,297379.04862366506,0.06211160123348236,28120,1500,15.86,2143.4,4,2173.3,10270918.428785808,44123094.02452402,0.13101462183085877,0.13108506908279016,,, +b1200k.cps2023-2024.acs000.s0,local,1200000,2,0.0,0,0,1087987,112013,0,2512844,2512844,False,0.053092144429683685,0.050769366323947906,92547,627.771262112879,427.73007308594583,38732.49652443986,62206.50135809787,636276.3483267163,1762923.5167594533,441457.4362367083,0.050769366323947906,28120,1500,17.97,12600.2,6,12789.2,11759675.23438855,46790443.02373776,0.1535449563501897,0.13889392986163127,,, +b1200k.cps2023-2024.acs100.s0,local,1200000,2,1.0,0,1087987,0,112013,1087987,234556,1322543,False,0.06953004002571106,0.06619999557733536,1180534,723.5489724300639,531.0370034191171,278972.2214834125,640683.4177700127,309737.8669671637,678604.2884228699,290788.2528424138,0.06619999557733536,28120,1500,15.18,2220.5,4,2252.5,10119732.913427562,43951757.3943063,0.1286390438138022,0.13061483508748364,,, +b1200k.cps2024.acs000.s0,local,1200000,1,0.0,0,0,1144238,55762,0,2517604,2517604,True,0.05791730061173439,0.05482560396194458,55762,452.07332576470174,290.42941934839746,23842.90159991112,40937.95655924153,655826.3274084858,1762585.2056385933,452019.63633752876,0.05482560396194458,28117,1500,27.0,8391.4,6,,11640442.073896125,47028176.19078167,0.15159195490070432,0.1396951194421348,20.77,171.0,solve peak from grid-local.log line at 2026-09-29 06:33:24; solve wall time not recorded +b1200k.cps2024.acs100.s0,local,1200000,1,1.0,0,1144238,0,55762,1144238,116990,1261228,False,0.07439278066158295,0.07089728862047195,1200000,683.0307460946972,493.1350930635777,281840.1947789175,646750.5618705589,291688.996097182,657982.5655365874,281840.1947789174,0.07089728862047195,28120,1500,14.55,2318.2,4,2346.2,9932355.443103073,43795380.26192823,0.1257795622778522,0.13021968662598798,,, +b300k.cps0.acs100.s0,local,300000,0,1.0,0,300000,0,0,300000,0,300000,False,0.10084562748670578,0.09662018716335297,300000,208.76683350509938,152.5010010892675,88739.42584862383,159507.19151006124,88739.42584862383,159507.19151006124,88739.42584862383,0.09662018716335297,28111,1500,6.01,1131.6,4,1151.0,9994140.472411707,45838969.392857686,0.12793070598915623,0.13651280143787808,,, +b300k.cps2022-2023-2024.acs000.s0,local,300000,3,0.0,0,0,131148,168852,0,627089,627089,True,0.06197219714522362,0.05896691977977753,130294,293.1242316066317,234.0589912011114,53840.515783674804,86558.24850894253,152426.09046800868,406235.7429873301,105855.91877918108,0.05896691977977753,28120,1500,9.2,1258.7,6,,11728490.304637432,47140068.62695289,0.15267437847183218,0.1395504285318954,8.02,50.4,solve peak from grid-local.log line at 2026-09-29 02:01:01; solve wall time not recorded +b300k.cps2022-2023-2024.acs100.s0,local,300000,3,1.0,0,131148,0,168852,131148,352932,484080,False,0.05747527256608009,0.054382581263780594,261442,267.98911404640273,199.8776713284787,83424.32729710112,156488.83620453524,118261.9895609146,249684.87617608104,96319.21710963502,0.054382581263780594,28120,1500,7.62,2123.3,4,2171.7,11010424.81658316,45877035.76649492,0.14210509344328076,0.136025536219776,,, +b300k.cps2022-2023-2024.acs100.s1,local,300000,3,1.0,1,131148,0,168852,131148,352932,484080,False,0.058328188955783844,0.05536476522684097,261442,270.8175557388307,207.4290743654512,84651.23842388003,156197.67624045914,120786.86390138796,248944.47269304335,97885.88459997045,0.05536476522684097,28120,1500,7.71,748.4,4,764.3,11251992.610887837,46439322.54574382,0.14546151210114885,0.1377226526604065,,, +b300k.cps2022-2023-2024.acs100.s2,local,300000,3,1.0,2,131148,0,168852,131148,352932,484080,False,0.056938815861940384,0.05362273007631302,261442,266.85349799871017,198.15991625881577,83676.01853855501,156281.15768732992,119274.72231531299,249156.59368635973,96718.89670479513,0.05362273007631302,28120,1500,7.73,1147.5,4,1173.5,11318567.330588162,46255362.98305111,0.1463442417427448,0.13725096388199526,,, +b300k.cps2023-2024.acs000.s0,local,300000,2,0.0,0,0,187987,112013,0,628217,628217,True,0.06602660566568375,0.06245909258723259,92547,288.65011252571776,236.55103167715947,39843.02064573599,62206.501358097885,164053.0018089385,425920.40023749234,112941.6994813622,0.06245909258723259,28120,1500,9.4,1418.3,6,,11696127.455528975,47240268.85376501,0.15196137143398145,0.13985880127297973,7.77,62.9,solve peak from grid-local.log line at 2026-09-29 01:36:46; solve wall time not recorded +b300k.cps2023-2024.acs100.s0,local,300000,2,1.0,0,187987,0,112013,187987,234556,422543,False,0.06609753519296646,0.0621991790831089,280534,258.28781500238244,188.41344471630833,85272.64611894479,162363.95916515277,111345.61534092923,209930.75528175358,93972.5567800582,0.0621991790831089,28120,1500,7.24,1701.6,4,1742.3,10819954.753928734,45818397.78469345,0.13921452614647642,0.13595159977380228,,, +b300k.cps2024.acs000.s0,local,300000,1,0.0,0,0,244238,55762,0,629368,629368,True,0.07355623692274094,0.06928373873233795,55762,272.12073195851656,210.86143249640017,25941.420332837297,40937.956559241524,180320.44405138228,437374.19822877704,121687.38177596574,0.06928373873233795,28117,1500,9.4,1381.5,6,,11658871.663017869,47383894.11827624,0.150164421240316,0.1401801960058113,8.14,49.9,solve peak from grid-local.log line at 2026-09-29 01:11:15; solve wall time not recorded +b300k.cps2024.acs100.s0,local,300000,1,1.0,0,244238,0,55762,244238,116990,361228,False,0.08230788260698318,0.07791590690612793,300000,247.76764484201772,178.74622000515888,93725.70814697331,168415.93548620763,104383.5510354031,181311.31435542594,93725.70814697334,0.07791590690612793,28120,1500,2.36,2042.0,4,2192.1,10475134.279326146,45962042.86457038,0.1336279078690531,0.13643628189887907,,, +b300k.cps2024.acs100.s1,local,300000,1,1.0,1,244238,0,55762,244238,116990,361228,False,0.08203397691249847,0.07790804654359818,300000,250.67828327126307,182.75149307418616,94328.32142441272,168324.0567321345,105202.23781161537,181204.8313243854,94328.32142441267,0.07790804654359818,28120,1500,6.68,655.0,4,666.3,10887165.394025274,46695876.58953652,0.13899435387194597,0.13871900849756835,,, +b300k.cps2024.acs100.s2,local,300000,1,1.0,2,244238,0,55762,244238,116990,361228,False,0.08394557982683182,0.07939135283231735,300000,254.46022594661866,179.49914879266868,96019.8351263429,168066.56509829275,107165.45812145126,180906.45837064926,96019.8351263429,0.07939135283231735,28118,1500,6.67,556.7,4,567.3,10752683.877311276,46458386.26648162,0.1371049151150891,0.1378664031982895,,, +b600k.cps0.acs100.s0,local,600000,0,1.0,0,600000,0,0,600000,0,600000,False,0.08315679430961609,0.07882141321897507,600000,364.9598893722962,261.3860070074219,155143.02481544143,319190.3362905997,155143.02481544143,319190.3362905997,155143.02481544143,0.07882141321897507,28117,1500,8.3,1078.2,4,1094.6,10009604.216547772,45125376.066546336,0.12705498826495873,0.13430688708821398,,, +b600k.cps2022-2023-2024.acs000.s0,local,600000,3,0.0,0,0,431148,168852,0,1254039,1254039,True,0.054585784673690796,0.05234654247760773,130294,500.7993519200179,395.0783737978023,54304.648500122195,86558.24850894253,310443.028954894,865150.5896769182,215764.97453751817,0.05234654247760773,28120,1500,14.7,2287.2,6,,11912006.84935975,47202039.79063299,0.1554219572278197,0.13999598485576026,8.85,117.4,solve peak from grid-local.log line at 2026-09-29 04:10:34; solve wall time not recorded +b600k.cps2022-2023-2024.acs050.s0,local,600000,3,0.5,0,215574,215574,168852,215574,803510,1019084,False,0.05014830082654953,0.047680094838142395,345868,462.3112487701133,351.84198407069437,91100.40128899252,170471.51209940494,224994.0707954942,533833.497843238,182205.06479474533,0.047680094838142395,28120,1500,13.13,1731.8,4,1756.4,11369900.929462682,45904557.96444516,0.14713191895172575,0.13634912759357135,,, +b600k.cps2022-2023-2024.acs100.s0,local,600000,3,1.0,0,431148,0,168852,431148,352932,784080,False,0.06163938716053963,0.05774381011724472,561442,448.63763079873604,329.9962314886902,150595.0505577627,315955.71431784425,194306.5847555616,389301.29107731656,168316.10695033797,0.05774381011724472,28120,1500,10.46,1478.4,4,1499.8,10694379.845899804,45186803.03944273,0.13732852485974276,0.13419978680180616,,, +b600k.cps2023-2024.acs000.s0,local,600000,2,0.0,0,0,487987,112013,0,1256347,1256347,True,0.0583859421312809,0.055385854095220566,92547,452.2526460360601,345.8264044377955,39229.840755440826,62206.501358097914,322095.43995491986,876506.2056315144,222908.5410778321,0.055385854095220566,28120,1500,15.5,2367.6,6,,11769767.391806126,47163669.81806761,0.15344127483400752,0.13986043582834667,13.67,71.9,solve peak from grid-local.log line at 2026-09-29 03:28:42; solve wall time not recorded +b600k.cps2023-2024.acs100.s0,local,600000,2,1.0,0,487987,0,112013,487987,234556,722543,False,0.06882898509502411,0.0653921589255333,580534,432.5169083712294,320.2611921732755,155524.49115215163,322031.188009703,185081.49131379533,362791.050186207,166213.91257173623,0.0653921589255333,28120,1500,9.91,1561.6,4,1590.8,10497679.488581907,44969203.40838291,0.13413985166711637,0.1335468745502098,,, +b600k.cps2024.acs000.s0,local,600000,1,0.0,0,0,544238,55762,0,1258830,1258830,True,0.0645085871219635,0.060912467539310455,55762,373.88410477679975,263.72638535233403,24855.053519465826,40937.956559241546,343332.58508595044,880334.3437453978,234488.23139657328,0.060912467539310455,28117,1500,15.6,2523.8,6,,11614913.053483784,47234704.62444273,0.15061274517588585,0.1400389874165899,8.07,98.2,solve peak from grid-local.log line at 2026-09-29 02:46:27; solve wall time not recorded +b600k.cps2024.acs050.s0,local,600000,1,0.5,0,272119,272119,55762,272119,687926,960045,False,0.054635610431432724,0.051492102444171906,327881,406.59225511494594,318.3977985048655,55461.583853714335,114749.21018201848,221123.9520490093,489715.30208010477,183622.0879160021,0.051492102444171906,28120,1500,10.57,1785.4,4,1813.3,11054844.387464229,45850319.01790954,0.14283335729350186,0.13626589274397086,,, +b600k.cps2024.acs100.s0,local,600000,1,1.0,0,544238,0,55762,544238,116990,661228,False,0.07838045060634613,0.07427364587783813,600000,406.1440568158041,294.3440927223149,161804.4264631515,327923.64802453225,172362.61011996653,339683.81864361133,161804.42646315147,0.07427364587783813,28120,1500,8.08,1789.4,4,1817.9,10317732.631550636,45084822.43033208,0.13127018767687001,0.13403165416587537,,, +natural.cps2022-2023-2024.acs100.s0,local,0,3,1.0,0,0,0,168852,0,352932,352932,True,0.06911672651767731,0.06600123643875122,130294,190.7662588538194,155.42287055966597,52073.705552568616,86558.24850894253,94025.73865812777,248529.95030437905,64952.22984653852,0.06600123643875122,28120,1500,6.4,774.9,6,,11418350.796070099,46569084.67845273,0.14802659835552862,0.13765586462752047,4.71,34.5,solve peak from grid-local.log line at 2026-09-29 00:44:58; solve wall time not recorded +natural.cps2023-2024.acs100.s0,local,0,2,1.0,0,0,0,112013,0,234556,234556,True,0.08473091572523117,0.08072442561388016,92547,141.04816128725298,114.23123748491122,38975.87635266753,62206.501358097885,68731.28222973633,164873.26090208263,46551.89785019205,0.08072442561388016,28103,1500,5.4,699.6,6,,11429484.050330639,46866444.97094107,0.1470708857488013,0.13833162882321093,5.16,18.5,solve peak from grid-local.log line at 2026-09-29 00:28:06; solve wall time not recorded +natural.cps2024.acs100.s0,local,0,1,1.0,0,0,0,55762,0,116990,116990,True,0.11794913560152054,0.11376915127038956,55762,84.95913408732991,67.1108572841234,26267.168734799732,40937.95655924153,40526.9309224063,81941.59918861713,26267.168734799732,0.11376915127038956,27984,1500,4.3,365.6,6,,11688267.860393524,47292341.423835754,0.147717267270404,0.139334032941409,3.25,67.5,solve peak from grid-local.log line at 2026-09-29 00:13:00; solve wall time not recorded +b1200k.cps0.acs100.s0,national,1200000,0,1.0,0,1200000,0,0,1200000,0,1200000,False,0.03872077912092209,0.03640918433666229,1200000,543.912125861377,394.5499851383779,233507.8983854827,637875.3901337923,233507.8983854827,637875.3901337923,233507.8983854827,0.03640918433666229,4825,1500,10.01,1180.4,4,1202.2,9591966.75317985,41048256.57024999,0.12247718332286353,0.12096273503666487,,, +b1200k.cps2022-2023-2024.acs000.s0,national,1200000,3,0.0,0,0,1031148,168852,0,2508197,2508197,True,0.02433282695710659,0.022894863039255142,130294,683.0389799169452,523.1623581302406,45160.28249329324,86558.24850894252,573925.0839945227,1763224.2814842558,395171.5229703896,0.022894863039255142,4828,1500,18.3,6435.3,6,,11355374.259827435,43616010.283807576,0.1465062564067782,0.12760347727080348,15.04,252.2,solve peak from grid-national.log line at 2026-09-29 06:47:59; solve wall time not recorded +b1200k.cps2022-2023-2024.acs100.s0,national,1200000,3,1.0,0,1031148,0,168852,1031148,352932,1384080,False,0.043582621961832047,0.04171165078878403,1161442,634.7976658792697,486.8391155777681,222919.7725749223,634911.9042601348,275179.2243128017,701288.0088424678,245283.75333559135,0.04171165078878403,4828,1500,11.28,1434.0,4,1464.8,10313150.380732972,41392224.84187276,0.13183373401652163,0.12156959046638176,,, +b1200k.cps2023-2024.acs000.s0,national,1200000,2,0.0,0,0,1087987,112013,0,2512844,2512844,True,0.025224192067980766,0.024002769961953163,92547,555.4792248827257,415.19865534973974,31904.85055324262,62206.50135809787,580498.744451579,1762923.5167594533,400010.2992546738,0.024002769961953163,4828,1500,17.1,3054.9,6,,11382479.562117398,43869199.15454179,0.14649550773967193,0.1283199041914545,12.98,162.0,solve peak from grid-national.log line at 2026-09-29 04:45:05; solve wall time not recorded +b1200k.cps2023-2024.acs100.s0,national,1200000,2,1.0,0,1087987,0,112013,1087987,234556,1322543,False,0.04984426498413086,0.0478442944586277,1180534,609.1911053311032,465.1256245917265,230272.02491931393,640683.4177700127,264712.2175271768,678604.2884228699,243196.91667149164,0.0478442944586277,4828,1500,10.96,1377.3,4,1406.4,10113787.189620176,41133426.019427866,0.1292435570215891,0.12094641834021345,,, +b1200k.cps2024.acs000.s0,national,1200000,1,0.0,0,0,1144238,55762,0,2517604,2517604,True,0.028063807636499405,0.026821570470929146,55762,389.9251916514208,271.21734318759843,18675.74777381174,40937.95655924153,585223.1069359366,1762585.2056385933,401730.2326073889,0.026821570470929146,4825,1500,18.3,3011.8,6,,11369278.149812996,44416300.947438374,0.146897055231995,0.12986795044057076,14.43,139.6,solve peak from grid-national.log line at 2026-09-29 03:50:41; solve wall time not recorded +b1200k.cps2024.acs100.s0,national,1200000,1,1.0,0,1144238,0,55762,1144238,116990,1261228,False,0.05713044852018356,0.05501589924097061,1200000,579.9641480581517,426.03935885991893,239079.8688512916,646750.5618705589,250350.08231436514,657982.5655365874,239079.86885129148,0.05501589924097061,4828,1500,10.55,1437.8,4,1461.2,9896746.1838122,41104424.76558627,0.12642986740365167,0.12098644519345499,,, +b300k.cps0.acs100.s0,national,300000,0,1.0,0,300000,0,0,300000,0,300000,False,0.0425904281437397,0.040227945894002914,300000,143.7717104162282,101.51991639123493,60492.10872186916,159507.19151006124,60492.10872186916,159507.19151006124,60492.10872186916,0.040227945894002914,4825,1500,5.01,1087.3,4,1114.9,9641597.450175056,41796155.872448415,0.12305950584913734,0.12306176471961369,,, +b300k.cps2022-2023-2024.acs000.s0,national,300000,3,0.0,0,0,131148,168852,0,627089,627089,True,0.02439185604453087,0.023094959557056427,130294,251.6042025696189,212.24511310208516,44983.64315566284,86558.24850894253,131797.69918104677,406235.7429873301,90821.32297287899,0.023094959557056427,4828,1500,6.8,923.5,6,,11374899.039060831,43807871.84648985,0.14672511505628388,0.128145449001727,5.9,42.8,solve peak from grid-national.log line at 2026-09-29 01:27:56; solve wall time not recorded +b300k.cps2022-2023-2024.acs100.s0,national,300000,3,1.0,0,131148,0,168852,131148,352932,484080,False,0.0213861595839262,0.02002881094813347,261442,215.23450369169024,159.42105617247114,69064.95015142651,156488.83620453524,95019.59244673677,249684.87617608104,78646.03072777389,0.02002881094813347,4828,1500,6.2,1295.1,4,1336.5,10584715.73811039,41685376.53160183,0.1358619284794174,0.12216750220843431,,, +b300k.cps2022-2023-2024.acs100.s1,national,300000,3,1.0,1,131148,0,168852,131148,352932,484080,False,0.02272064797580242,0.02108600363135338,261442,218.29003440104339,162.42046647139554,69333.01365841262,156197.67624045914,95821.48676280671,248944.47269304335,79062.22527509344,0.02108600363135338,4828,1500,6.2,612.2,4,624.9,11021438.86652263,42455789.65204207,0.14160616590720937,0.1244076265597218,,, +b300k.cps2022-2023-2024.acs100.s2,national,300000,3,1.0,2,131148,0,168852,131148,352932,484080,False,0.02167442999780178,0.020376406610012054,261442,216.55363338989582,166.09240250416968,69661.27215264387,156281.15768732992,96148.07779713064,249156.59368635973,79390.61168351417,0.020376406610012054,4828,1500,5.92,585.4,4,600.5,10861576.97654386,42038924.56430028,0.14008589708860206,0.12330797192083484,,, +b300k.cps2023-2024.acs000.s0,national,300000,2,0.0,0,0,187987,112013,0,628217,628217,True,0.025224341079592705,0.024160226806998253,92547,246.6306178320836,202.3404539529643,31712.95601798473,62206.501358097885,139424.29536662524,425920.40023749234,96140.03694340873,0.024160226806998253,4828,1500,7.1,943.7,6,,11432612.989863634,44080022.004617095,0.14709869508613466,0.1288981482812852,5.65,56.0,solve peak from grid-national.log line at 2026-09-29 01:10:13; solve wall time not recorded +b300k.cps2023-2024.acs100.s0,national,300000,2,1.0,0,187987,0,112013,187987,234556,422543,False,0.02435688115656376,0.022902067750692368,280534,196.92729743904806,140.65406142695804,65907.76439890644,162363.95916515277,84145.60518735563,209930.75528175358,71894.01417896678,0.022902067750692368,4828,1500,5.83,614.0,4,635.7,10581508.900618356,41651178.46120613,0.13537529690507638,0.12209002420026782,,, +b300k.cps2024.acs000.s0,national,300000,1,0.0,0,0,244238,55762,0,629368,629368,True,0.0282257292419672,0.02702220343053341,55762,219.88090668456755,169.45317852319738,18566.939722103863,40937.956559241524,144526.3683928753,437374.19822877704,99170.14517170061,0.02702220343053341,4825,1500,7.1,906.6,6,,11388008.222690105,44598437.878023386,0.14715074007796508,0.13038711883029216,6.19,43.2,solve peak from grid-national.log line at 2026-09-29 00:51:34; solve wall time not recorded +b300k.cps2024.acs100.s0,national,300000,1,1.0,0,244238,0,55762,244238,116990,361228,False,0.039431530982255936,0.0373963788151741,300000,171.18927088274563,120.72213545828625,63296.633070639335,168415.93548620763,72515.77093181499,181311.31435542594,63296.63307063933,0.0373963788151741,4828,1500,1.41,802.3,4,1030.1,10294694.07570061,41673720.0904639,0.13138742782002952,0.12218612824893674,,, +b300k.cps2024.acs100.s1,national,300000,1,1.0,1,244238,0,55762,244238,116990,361228,False,0.03853805735707283,0.03637304902076721,300000,170.33106956800424,126.28911015883793,63661.665857208754,168324.0567321345,72997.50108399754,181204.8313243854,63661.665857208776,0.03637304902076721,4828,1500,5.48,446.1,4,457.7,10461103.222164685,42055014.77905263,0.13405258593041433,0.12348572402303655,,, +b300k.cps2024.acs100.s2,national,300000,1,1.0,2,244238,0,55762,244238,116990,361228,False,0.03928820788860321,0.036883339285850525,300000,173.70731044745685,129.131949389442,65310.50293694685,168066.56509829275,75001.11849491969,180906.45837064926,65310.50293694685,0.036883339285850525,4828,1500,5.36,412.3,4,422.8,10375724.657162812,42051714.29241819,0.13290495142731462,0.12331530934208841,,, +b600k.cps0.acs100.s0,national,600000,0,1.0,0,600000,0,0,600000,0,600000,False,0.04054223746061325,0.03836475685238838,600000,275.2207044872443,200.5672447286007,119288.30412767422,319190.3362905997,119288.30412767422,319190.3362905997,119288.30412767422,0.03836475685238838,4825,1500,6.55,856.6,4,870.6,9725483.486029487,41574001.55281273,0.12417225908539854,0.12247343785129945,,, +b600k.cps2022-2023-2024.acs000.s0,national,600000,3,0.0,0,0,431148,168852,0,1254039,1254039,True,0.024382643401622772,0.022988269105553627,130294,454.7753961817672,365.9812050151028,45050.38874639817,86558.24850894253,280281.331022451,865150.5896769182,193068.26427151615,0.022988269105553627,4828,1500,10.8,1486.9,6,,11371756.135731876,43750251.109125644,0.14667396210625794,0.12798974699289783,8.44,101.0,solve peak from grid-national.log line at 2026-09-29 02:56:54; solve wall time not recorded +b600k.cps2022-2023-2024.acs050.s0,national,600000,3,0.5,0,215574,215574,168852,215574,803510,1019084,False,0.02069520577788353,0.019354643300175667,345868,397.18834157306765,317.194185879134,77830.18085078364,170471.51209940494,193136.0566511478,533833.497843238,157550.8032433334,0.019354643300175667,4828,1500,9.32,1204.5,4,1228.1,10818248.952591147,42031960.58418137,0.1390709414567029,0.1231790923431293,,, +b600k.cps2022-2023-2024.acs100.s0,national,600000,3,1.0,0,431148,0,168852,431148,352932,784080,False,0.025421563535928726,0.023899151012301445,561442,343.98726405602747,264.11520392021356,113040.62619633827,315955.71431784425,151507.81294054587,389301.29107731656,128327.01916547072,0.023899151012301445,4828,1500,7.93,996.9,4,1024.0,10726110.603100806,42260022.086715564,0.1373884972456171,0.12397400507814195,,, +b600k.cps2023-2024.acs000.s0,national,600000,2,0.0,0,0,487987,112013,0,1256347,1256347,True,0.02516903541982174,0.024079127237200737,92547,407.432608967661,318.0259011306876,31780.55376763681,62206.501358097914,287428.0976136814,876506.2056315144,198151.41973040573,0.024079127237200737,4828,1500,10.6,1609.5,6,,11412792.855736494,43997041.19816533,0.14684513849505035,0.12867326104459959,9.43,59.0,solve peak from grid-national.log line at 2026-09-29 02:28:51; solve wall time not recorded +b600k.cps2023-2024.acs100.s0,national,600000,2,1.0,0,487987,0,112013,487987,234556,722543,False,0.037997834384441376,0.0358051136136055,580534,324.10843024060046,251.381966421416,114433.20966057874,322031.188009703,142440.39644767783,362791.050186207,124304.35082513398,0.0358051136136055,4828,1500,7.49,1327.1,4,1354.9,10440162.816235783,41550040.864334404,0.13339031800201104,0.12193002120303904,,, +b600k.cps2024.acs000.s0,national,600000,1,0.0,0,0,544238,55762,0,1258830,1258830,True,0.0281167421489954,0.026919201016426086,55762,310.47344920072624,225.91142117354306,18612.508981182837,40937.956559241546,291487.9745290404,880334.3437453978,200108.9125813431,0.026919201016426086,4825,1500,11.0,1621.4,6,,11372131.305653334,44538257.58970815,0.1469275383118905,0.13021938841996092,7.47,85.3,solve peak from grid-national.log line at 2026-09-29 01:59:14; solve wall time not recorded +b600k.cps2024.acs050.s0,national,600000,1,0.5,0,272119,272119,55762,272119,687926,960045,False,0.022764919325709343,0.021330222487449646,327881,343.8278869112812,268.51730477671015,45347.92882155529,114749.21018201848,184474.2557012649,489715.30208010477,155148.95997585973,0.021330222487449646,4828,1500,9.15,1195.0,4,1224.6,10719044.044821162,42154177.302658916,0.1377625434927752,0.12352896615205017,,, +b600k.cps2024.acs100.s0,national,600000,1,1.0,0,544238,0,55762,544238,116990,661228,False,0.05047328770160675,0.04838469624519348,600000,308.4210871605093,227.44736055047443,121891.03572378987,327923.64802453225,132440.09677401997,339683.81864361133,121891.03572378986,0.04838469624519348,4828,1500,7.0,1435.0,4,1457.6,10107732.423939351,41379590.19807629,0.12916048039766112,0.12163801582352916,,, +natural.cps2022-2023-2024.acs100.s0,national,0,3,1.0,0,0,0,168852,0,352932,352932,True,0.024450428783893585,0.02311604470014572,130294,162.07307651019124,135.8825931190194,44942.90129089897,86558.24850894253,80524.24306066195,248529.95030437905,55412.73795665963,0.02311604470014572,4828,1500,5.1,494.9,6,,11386375.854607224,43843039.51912677,0.14687699979485672,0.1282397736539901,3.98,30.9,solve peak from grid-national.log line at 2026-09-29 00:33:39; solve wall time not recorded +natural.cps2023-2024.acs100.s0,national,0,2,1.0,0,0,0,112013,0,234556,234556,True,0.025277292355895042,0.02424626424908638,92547,110.2017029609713,90.97968053735669,31671.325578832886,62206.501358097885,53851.125087605615,164873.26090208263,37114.08063691554,0.02424626424908638,4828,1500,4.6,461.8,6,,11443507.481101513,44138225.16565478,0.1471996237820945,0.12904456215569654,4.56,16.7,solve peak from grid-national.log line at 2026-09-29 00:21:38; solve wall time not recorded +natural.cps2024.acs100.s0,national,0,1,1.0,0,0,0,55762,0,116990,116990,True,0.028257571160793304,0.027136798948049545,55762,56.46558618528475,44.74623298966674,18525.796531333322,40937.95655924153,27014.978824456142,81941.59918861713,18525.796531333322,0.027136798948049545,4825,1500,4.0,268.8,6,,11400368.045695305,44687541.00171065,0.147337092895218,0.13063829061507248,3.36,64.2,solve peak from grid-national.log line at 2026-09-29 00:11:23; solve wall time not recorded diff --git a/experiments/us-support-mix-bakeoff-20260930/asec_quality.json b/experiments/us-support-mix-bakeoff-20260930/asec_quality.json new file mode 100644 index 0000000000..ccd2aa52be --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/asec_quality.json @@ -0,0 +1,159 @@ +{ + "processed_h5_by_income_year": [ + { + "income_year": 2018, + "survey_year": 2019, + "households": 68345, + "distinct_h_idnum": 68345, + "share_households_in_prior_file": null, + "household_weight_total_millions": 128.67448709, + "household_weight_cv": 0.6025358837852475, + "household_weight_kish_share": 0.7336490761489285, + "homeownership_weighted": 0.6447575960568765, + "unemployment_compensation_recipients": 1723, + "earners_whole_record_imputed_weighted": 0.242330658014494, + "earners_item_allocated_weighted": 0.21330270102200033 + }, + { + "income_year": 2019, + "survey_year": 2020, + "households": 60460, + "distinct_h_idnum": 60460, + "share_households_in_prior_file": 0.3777704267284155, + "household_weight_total_millions": 128.58819972, + "household_weight_cv": 0.6099413348000816, + "household_weight_kish_share": 0.7288478698774934, + "homeownership_weighted": 0.6639244541559711, + "unemployment_compensation_recipients": 1563, + "earners_whole_record_imputed_weighted": 0.2381596300674719, + "earners_item_allocated_weighted": 0.2125500232438193 + }, + { + "income_year": 2020, + "survey_year": 2021, + "households": 62850, + "distinct_h_idnum": 62850, + "share_households_in_prior_file": 0.32513922036595067, + "household_weight_total_millions": 130.0231343, + "household_weight_cv": 0.5979707232435548, + "household_weight_kish_share": 0.7366108171432274, + "homeownership_weighted": 0.6575969944911564, + "unemployment_compensation_recipients": 10915, + "earners_whole_record_imputed_weighted": 0.2243862480395746, + "earners_item_allocated_weighted": 0.22633534476314407 + }, + { + "income_year": 2021, + "survey_year": 2022, + "households": 59148, + "distinct_h_idnum": 59148, + "share_households_in_prior_file": 0.34988503415161964, + "household_weight_total_millions": 131.31471499, + "household_weight_cv": 0.607226259555364, + "household_weight_kish_share": 0.7306076294779332, + "homeownership_weighted": 0.6544510986947999, + "unemployment_compensation_recipients": 4065, + "earners_whole_record_imputed_weighted": 0.22397363113999202, + "earners_item_allocated_weighted": 0.21762532030886778 + }, + { + "income_year": 2022, + "survey_year": 2023, + "households": 56839, + "distinct_h_idnum": 56839, + "share_households_in_prior_file": 0.34770140220623164, + "household_weight_total_millions": 131.66090909, + "household_weight_cv": 0.599646329065834, + "household_weight_kish_share": 0.7355235793912631, + "homeownership_weighted": 0.6592966302599605, + "unemployment_compensation_recipients": 1225, + "earners_whole_record_imputed_weighted": 0.2186550960443649, + "earners_item_allocated_weighted": 0.2167998316454706 + }, + { + "income_year": 2023, + "survey_year": 2024, + "households": 56251, + "distinct_h_idnum": 56251, + "share_households_in_prior_file": 0.339407299425788, + "household_weight_total_millions": 132.39192545, + "household_weight_cv": 0.5979118733636303, + "household_weight_kish_share": 0.7366490056630862, + "homeownership_weighted": 0.6563332517043623, + "unemployment_compensation_recipients": 1360, + "earners_whole_record_imputed_weighted": 0.2070184806918598, + "earners_item_allocated_weighted": 0.20988846004956252 + }, + { + "income_year": 2024, + "survey_year": 2025, + "households": 55762, + "distinct_h_idnum": 55762, + "share_households_in_prior_file": 0.34909077866647537, + "household_weight_total_millions": 134.96389280000002, + "household_weight_cv": 0.6017557642286367, + "household_weight_kish_share": 0.7341550977232084, + "homeownership_weighted": 0.6511854704001246, + "unemployment_compensation_recipients": 1400, + "earners_whole_record_imputed_weighted": 0.1932919011043821, + "earners_item_allocated_weighted": 0.215243237218826 + } + ], + "pools": { + "2022-2023-2024": { + "households": 168852, + "distinct_h_idnum": 130294 + }, + "2020-2021-2022-2023-2024": { + "households": 290850, + "distinct_h_idnum": 211834 + } + }, + "public_use_archives_by_survey_year": [ + { + "survey_year": 2022, + "income_year": 2021, + "persons": 152732, + "whole_supplement_imputed_weighted": 0.2046639035877903, + "bachelors_or_higher_25plus_weighted": 0.376611355994884 + }, + { + "survey_year": 2023, + "income_year": 2022, + "persons": 146133, + "whole_supplement_imputed_weighted": 0.1994541476607985, + "bachelors_or_higher_25plus_weighted": 0.3834978999842217 + }, + { + "survey_year": 2024, + "income_year": 2023, + "persons": 144265, + "whole_supplement_imputed_weighted": 0.19164278967548057, + "bachelors_or_higher_25plus_weighted": 0.38686143531005024 + }, + { + "survey_year": 2025, + "income_year": 2024, + "persons": 142125, + "whole_supplement_imputed_weighted": 0.1782697407007112, + "bachelors_or_higher_25plus_weighted": 0.39343967585037093 + }, + { + "survey_year": 2026, + "income_year": 2025, + "persons": 134729, + "whole_supplement_imputed_weighted": 0.16678632658230516, + "bachelors_or_higher_25plus_weighted": 0.4024180140213014 + } + ], + "combined_unweighted_response_rate_by_survey_year": { + "source": "CPS ASEC technical documentation, Source and Accuracy statements (combined basic-CPS x ASEC household nonresponse), transcribed 2026-09-28", + "2019": 0.676, + "2020": 0.611, + "2021": 0.65, + "2022": 0.614, + "2023": 0.596, + "2024": 0.593, + "2025": 0.601 + } +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/asec_quality.py b/experiments/us-support-mix-bakeoff-20260930/asec_quality.py new file mode 100644 index 0000000000..bba6dfc23a --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/asec_quality.py @@ -0,0 +1,111 @@ +"""CPS ASEC response and processing quality by income year (receipt script). + +Writes ``asec_quality.json`` next to this file. Two local sources: + +- ``census_cps_{2018..2024}.h5`` (policyengine-us-data processed ASEC, keyed by + income year): households, survey year, distinct and repeated ``H_IDNUM``, + household-weight dispersion, homeownership, unemployment-compensation + recipients, and the earnings imputation flag ``I_ERNVAL`` (9 = whole record + imputed, 1-8 = item allocated) among wage earners. +- the Census public-use ASEC CSV archives ``asecpub{22..26}csv.zip`` (income + years 2021-2025): the whole-supplement imputation flag ``FL_665`` (persons, + ``MARSUPWT``-weighted) and the weighted bachelor's-or-higher share among + adults 25 and over (``A_HGA`` >= 43). + +Run: ``uv run python experiments/us-support-mix-bakeoff-20260930/asec_quality.py`` +""" + +from __future__ import annotations + +import json +import zipfile +from pathlib import Path + +import numpy as np +import pandas as pd + +STORAGE = Path("/Users/maxghenis/PolicyEngine/policyengine-us-data/policyengine_us_data/storage") +ZIPS = Path("/Users/maxghenis/PolicyEngine/_buildm-runtime/inputs/asec_education") +OUT = Path(__file__).resolve().parent / "asec_quality.json" + + +def h5_metrics(income_year: int, previous_ids: set | None) -> tuple[dict, set]: + path = STORAGE / f"census_cps_{income_year}.h5" + with pd.HDFStore(path, "r") as store: + hh = store["household"][["H_IDNUM", "H_YEAR", "H_TENURE", "HSUP_WGT"]] + person = store["person"][["A_FNLWGT", "I_ERNVAL", "UC_VAL", "WSAL_VAL"]] + w = hh["HSUP_WGT"].to_numpy(np.float64) / 100 + ids = set(hh["H_IDNUM"].astype(str)) + earners = person[person["WSAL_VAL"] > 0] + ew = earners["A_FNLWGT"].to_numpy(np.float64) + flag = earners["I_ERNVAL"].to_numpy() + metrics = { + "income_year": income_year, + "survey_year": int(hh["H_YEAR"].iloc[0]), + "households": int(len(hh)), + "distinct_h_idnum": len(ids), + "share_households_in_prior_file": ( + None if previous_ids is None else len(ids & previous_ids) / len(ids) + ), + "household_weight_total_millions": float(w.sum() / 1e6), + "household_weight_cv": float(w.std() / w.mean()), + "household_weight_kish_share": float(w.sum() ** 2 / np.square(w).sum() / len(w)), + "homeownership_weighted": float(w[hh["H_TENURE"].to_numpy() == 1].sum() / w.sum()), + "unemployment_compensation_recipients": int((person["UC_VAL"] > 0).sum()), + "earners_whole_record_imputed_weighted": float(ew[flag == 9].sum() / ew.sum()), + "earners_item_allocated_weighted": float(ew[(flag >= 1) & (flag <= 8)].sum() / ew.sum()), + } + return metrics, ids + + +def zip_metrics(survey_year: int) -> dict: + path = ZIPS / f"asecpub{survey_year % 100:02d}csv.zip" + with zipfile.ZipFile(path) as archive: + name = next(n for n in archive.namelist() if n.lower().startswith("pppub") and n.lower().endswith(".csv")) + with archive.open(name) as handle: + person = pd.read_csv(handle, usecols=["FL_665", "MARSUPWT", "A_AGE", "A_HGA"]) + w = person["MARSUPWT"].to_numpy(np.float64) + adults = person["A_AGE"].to_numpy() >= 25 + return { + "survey_year": survey_year, + "income_year": survey_year - 1, + "persons": int(len(person)), + "whole_supplement_imputed_weighted": float(w[person["FL_665"].to_numpy() != 1].sum() / w.sum()), + "bachelors_or_higher_25plus_weighted": float( + w[adults & (person["A_HGA"].to_numpy() >= 43)].sum() / w[adults].sum() + ), + } + + +def main() -> None: + files, previous = [], None + for year in range(2018, 2025): + metrics, previous = h5_metrics(year, previous) + files.append(metrics) + pools = {} + for years in ((2022, 2023, 2024), (2020, 2021, 2022, 2023, 2024)): + households, distinct = 0, set() + for year in years: + with pd.HDFStore(STORAGE / f"census_cps_{year}.h5", "r") as store: + ids = store["household"]["H_IDNUM"].astype(str) + households += len(ids) + distinct |= set(ids) + pools["-".join(map(str, years))] = {"households": households, "distinct_h_idnum": len(distinct)} + archives = [zip_metrics(year) for year in range(2022, 2027) if (ZIPS / f"asecpub{year % 100:02d}csv.zip").exists()] + payload = { + "processed_h5_by_income_year": files, + "pools": pools, + "public_use_archives_by_survey_year": archives, + "combined_unweighted_response_rate_by_survey_year": { + "source": "CPS ASEC technical documentation, Source and Accuracy statements " + "(combined basic-CPS x ASEC household nonresponse), transcribed 2026-09-28", + "2019": 0.676, "2020": 0.611, "2021": 0.650, "2022": 0.614, + "2023": 0.596, "2024": 0.593, "2025": 0.601, + }, + } + OUT.write_text(json.dumps(payload, indent=1)) + print(json.dumps(payload, indent=1)) + + +if __name__ == "__main__": + main() diff --git a/experiments/us-support-mix-bakeoff-20260930/compile.json b/experiments/us-support-mix-bakeoff-20260930/compile.json new file mode 100644 index 0000000000..7a5e756b1e --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/compile.json @@ -0,0 +1,57 @@ +{ + "dimension_counts": { + "acs_native/demographics_pep/national": 18, + "acs_native/demographics_pep/state": 918, + "cps_native/income_components/cd": 8900, + "cps_native/income_components/national": 102, + "cps_native/income_components/state": 3054, + "cps_native/program_receipt/national": 17, + "cps_native/program_receipt/state": 467, + "cps_native/tax_items/cd": 15440, + "cps_native/tax_items/national": 362, + "cps_native/tax_items/state": 3563, + "other/wealth/national": 1 + }, + "excluded": { + "excluded:reform_simulation": 11 + }, + "feed": "/Users/maxghenis/PolicyEngine/_buildh-runtime/inputs/consumer_facts_us_c5e5bf8.jsonl", + "feed_sha256": "b85437390021777e746f507c5890305496baf5fc7f2c78ba08ddb090f4839801", + "medicaid_substitutions": 1, + "n_concepts": 419, + "n_report_concepts": 2, + "n_specs": 32842, + "national_state_surface": { + "calibrated_targets": 5694, + "compiled_targets": 32842, + "dropped_congressional_district_targets": 27148, + "mode": "national_state" + }, + "notes": {}, + "peak_rss_gb": 3.76, + "registry_version": "a0698bc97ff9", + "roles": { + "holdout": 3470, + "sealed": 1661, + "train": 27711 + }, + "roles_by_level": { + "cd": { + "holdout": 2647, + "sealed": 1242, + "train": 20451 + }, + "national": { + "holdout": 36, + "sealed": 24, + "train": 440 + }, + "state": { + "holdout": 787, + "sealed": 395, + "train": 6820 + } + }, + "split_note": "Mirrors the unmerged us-target-roles-holdout split (salts, \\x1f hash, group keys) without its pins; see support_mix.py.", + "wall_s": 22.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/diffcheck.json b/experiments/us-support-mix-bakeoff-20260930/diffcheck.json new file mode 100644 index 0000000000..dc5463c363 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/diffcheck.json @@ -0,0 +1,43 @@ +{ + "peak_rss_gb": 7.76, + "results": { + "acs": { + "households": 4000, + "max_scaled_abs_diff": 0.0, + "per_family_level": { + "census_population/state": 0.0, + "cms_aca/state": 0.0, + "cms_medicaid/state": 0.0, + "hhs_acf_tanf/state": 0.0, + "irs_soi/cd": 0.0, + "irs_soi/state": 0.0, + "ssa/state": 0.0, + "state_income_tax/state": 0.0, + "usda_snap/state": 0.0 + }, + "specs_checked": 349, + "specs_skipped": 0 + }, + "cps": { + "households": 4000, + "logged_at": "2026-09-28 23:41:21", + "max_scaled_abs_diff": 0.0, + "per_family_level": { + "census_population/state": 0.0, + "cms_aca/state": 0.0, + "cms_medicaid/state": 0.0, + "hhs_acf_tanf/state": 0.0, + "irs_soi/cd": 0.0, + "irs_soi/state": 0.0, + "ssa/state": 0.0, + "state_income_tax/state": 0.0, + "usda_snap/state": 0.0 + }, + "source": "diffcheck.log (run 2026-09-28, before the CPS shard pickles were removed to free disk)", + "specs_checked": 349, + "specs_skipped": 0 + } + }, + "sample_size": 349, + "wall_s": 2157.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/dimensions_by_arm.csv b/experiments/us-support-mix-bakeoff-20260930/dimensions_by_arm.csv new file mode 100644 index 0000000000..092b25ace9 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/dimensions_by_arm.csv @@ -0,0 +1,61 @@ +product,arm,budget,cps_years,acs_fill_share,seed,rows,ess_distinct,cps_native_weighted.state,cps_native_weighted.cd,income_components.state,income_components.cd,tax_items.state,tax_items.cd,program_receipt.state,demographics_pep.state,acs_native.state,acs_native.cd,acs_native.county +local,natural.cps2024.acs100.s0,0,1,1.0,0,116990,26267.168734799732,0.13988907944788584,0.26982559244311777,0.2562402942508585,0.368628785306787,0.1409739736411195,0.32782135195928086,0.24908093565333903,0.13138699051834574,0.1312090190491272,0.2781213343284405,0.34225493884421215 +local,natural.cps2023-2024.acs100.s0,0,2,1.0,0,234556,38975.87635266753,0.12366293435387953,0.22202347910365358,0.2353600697008607,0.3150915957351537,0.11172690325900313,0.26165240206543205,0.24257472693888676,0.14465280966012622,0.1332678034709188,0.2664854242757982,0.31559512742870954 +local,natural.cps2022-2023-2024.acs100.s0,0,3,1.0,0,352932,52073.705552568616,0.11630036428536247,0.20918799149251538,0.2171361498676638,0.2924916286167124,0.10119344800103709,0.2404734489025593,0.2197060765645402,0.15388166362805228,0.13414271223116667,0.26338105805738965,0.2985811492810862 +local,b300k.cps0.acs100.s0,300000,0,1.0,0,300000,88739.42584862383,0.13521469683132492,0.20322294104403613,0.23429272769351714,0.294729466333595,0.16692357646531517,0.24936527410608197,0.37258429822471645,0.16305527686288307,0.08196402047177245,0.15106780989338248,0.22369602708311276 +local,b300k.cps2024.acs000.s0,300000,1,0.0,0,629368,25941.420332837297,0.1223066780110918,0.19172633377640774,0.2557141656365252,0.2877610780859453,0.11267807862514273,0.21868788082614773,0.23760123984607007,0.15011568577342907,0.13115579133430383,0.26457570025654703,0.2785245604889571 +local,b300k.cps2024.acs100.s0,300000,1,1.0,0,361228,93725.70814697331,0.1185864559996078,0.18820290304901868,0.22237544973362444,0.27773335987883097,0.13611389092845289,0.22506711078100425,0.2925484443868418,0.1549464681677243,0.07994127142566784,0.1548359798612499,0.22294114711272878 +local,b300k.cps2024.acs100.s1,300000,1,1.0,1,361228,94328.32142441272,0.12123740431226827,0.19480728770828887,0.23419690043695096,0.28571427478389977,0.14052842598636905,0.2289217975598675,0.30919132639747754,0.16845330693532218,0.08140994949870244,0.1518804674508249,0.2195127700022409 +local,b300k.cps2024.acs100.s2,300000,1,1.0,2,361228,96019.8351263429,0.1170056820776438,0.19216127518833778,0.22412856083303512,0.3005332842780463,0.1332729999290088,0.22824587666633092,0.26153923293957276,0.15203325967658674,0.07740144949963844,0.1510454075543548,0.21900819017104672 +local,b300k.cps2023-2024.acs000.s0,300000,2,0.0,0,628217,39843.02064573599,0.11778397298645633,0.18721730056155442,0.23299819017636778,0.27907417105340565,0.10086916449026685,0.21248577583951866,0.24221674734488627,0.16418836448595092,0.13311944245202448,0.26134690680787614,0.27819669296930083 +local,b300k.cps2023-2024.acs100.s0,300000,2,1.0,0,422543,85272.64611894479,0.11691788298368513,0.18977754194383192,0.2320873385842164,0.2809150155724099,0.11975072727313722,0.22387840042788953,0.27350756252784914,0.15692966173306047,0.0960938367399439,0.18396842645681372,0.23500455911363338 +local,b300k.cps2022-2023-2024.acs000.s0,300000,3,0.0,0,627089,53840.515783674804,0.11411377942794056,0.19309180716509766,0.21636417669259378,0.2777977077074786,0.09789246569895065,0.21735445534264175,0.22075797974313865,0.1621728690297679,0.1338969427048625,0.2603077214186516,0.2811845361517984 +local,b300k.cps2022-2023-2024.acs100.s0,300000,3,1.0,0,484080,83424.32729710112,0.11305897785288188,0.18629552604486727,0.23627019274520367,0.2788047270466411,0.10353524278489439,0.2153780787255036,0.24352550167912812,0.1638588636538814,0.10969956915480833,0.20491682517591076,0.2505315781295922 +local,b300k.cps2022-2023-2024.acs100.s1,300000,3,1.0,1,484080,84651.23842388003,0.11220351313714906,0.18951122005219645,0.22564925876059017,0.2810324406006082,0.1049204503493655,0.21924479189506244,0.234554556947064,0.16658090945865134,0.10958702566885979,0.20521579155685976,0.2501376757890562 +local,b300k.cps2022-2023-2024.acs100.s2,300000,3,1.0,2,484080,83676.01853855501,0.11115894372530616,0.18961988447543948,0.22425100384819646,0.28318014557709364,0.10067242177324874,0.21774880085486237,0.23294838474251595,0.16657533865686952,0.11002205325531467,0.20224998834242794,0.25110625367342454 +local,b600k.cps0.acs100.s0,600000,0,1.0,0,600000,155143.02481544143,0.1275144077655716,0.1876996582007501,0.2167636412860519,0.2775302429807402,0.14896247912328456,0.21918527936460727,0.3329885935813031,0.18202600101728358,0.08083134510715864,0.1454300198858715,0.19829443763219337 +local,b600k.cps2024.acs000.s0,600000,1,0.0,0,1258830,24855.053519465826,0.11877694453977253,0.17680395745009028,0.2493814685687504,0.2656953207189058,0.10892226992996659,0.20023622828585266,0.22907564730531144,0.16296383138786746,0.13105083685865165,0.2597983512024205,0.26501232705384486 +local,b600k.cps2024.acs050.s0,600000,1,0.5,0,960045,55461.583853714335,0.11248043166463478,0.17453691078898995,0.23432921919635682,0.26250895012461006,0.1028591653418102,0.1959079928120096,0.24338243766687528,0.1683056230460101,0.10238996266908044,0.1980519331231945,0.2258714958237272 +local,b600k.cps2024.acs100.s0,600000,1,1.0,0,661228,161804.4264631515,0.11765874312267996,0.17955182545588866,0.2156128538018088,0.2629066416936514,0.13087171934248212,0.20627381142528392,0.2972810264774454,0.17796828282928034,0.07177952705529453,0.13706247961699447,0.19233372872151291 +local,b600k.cps2023-2024.acs000.s0,600000,2,0.0,0,1256347,39229.840755440826,0.11412476667747028,0.17316246675353408,0.22726229991374686,0.26006802013216795,0.09638255758435196,0.19193938886986364,0.23832240721713327,0.17274112771628558,0.13321136195419295,0.25727838002070136,0.26352878336961755 +local,b600k.cps2023-2024.acs100.s0,600000,2,1.0,0,722543,155524.49115215163,0.11525290455200288,0.1770139784712007,0.2236640895251088,0.26024206825732665,0.12214147564951856,0.20066761534376518,0.2654557263444992,0.17279267026374792,0.08142177716253882,0.1495849738316336,0.1980060865656155 +local,b600k.cps2022-2023-2024.acs000.s0,600000,3,0.0,0,1254039,54304.648500122195,0.11410861050180121,0.17884903114114922,0.2107342152095433,0.2571939974229721,0.09722359194488588,0.1978848454201713,0.22116412164157961,0.17540191309020567,0.13427467248120709,0.2560036963169387,0.2634369478156212 +local,b600k.cps2022-2023-2024.acs050.s0,600000,3,0.5,0,1019084,91100.40128899252,0.11113820043967697,0.17263625620442757,0.2256603840633608,0.2605500603745919,0.09556850042571938,0.19540517208401864,0.24308717902612242,0.17558813189842468,0.11288732946108254,0.2091762793777027,0.23199637724724315 +local,b600k.cps2022-2023-2024.acs100.s0,600000,3,1.0,0,784080,150595.0505577627,0.114789468412254,0.1789329188416786,0.22801475595028387,0.2624714665203537,0.10891701658994464,0.19925786008259666,0.26689463596538643,0.16790058348725412,0.09245370096570511,0.16594369048785165,0.20690356338027988 +local,b1200k.cps0.acs100.s0,1200000,0,1.0,0,1200000,272607.14156716655,0.12009737290034002,0.1701355440552087,0.2064762143680669,0.24448238340214953,0.1271958904838077,0.19346215236328823,0.31823459303351853,0.19286922548605295,0.08377822842847181,0.146085628057843,0.17986335417522795 +local,b1200k.cps2024.acs000.s0,1200000,1,0.0,0,2517604,23842.90159991112,0.11641484559341059,0.16354791273995997,0.2510104848956959,0.24886446782578253,0.10541087233889969,0.18464326791535787,0.23151973362356593,0.17394744597746561,0.13168696307055947,0.2576876935081074,0.2568528351366444 +local,b1200k.cps2024.acs100.s0,1200000,1,1.0,0,1261228,281840.1947789175,0.11608102079866424,0.16894518110206463,0.20351433911134775,0.2449950653366499,0.12267272174567183,0.1906566975362283,0.2780238101680827,0.18843601526452441,0.07203914294295263,0.13632614558291786,0.17434799937487183 +local,b1200k.cps2023-2024.acs000.s0,1200000,2,0.0,0,2512844,38732.49652443986,0.11294597103103093,0.16295377877192208,0.22520642293189733,0.24566005803881902,0.09461582123755304,0.18103017107743002,0.23728528309773528,0.18091450159282604,0.13280686435982325,0.25357586737212845,0.2542804791038048 +local,b1200k.cps2023-2024.acs100.s0,1200000,2,1.0,0,1322543,278972.2214834125,0.11384964933410756,0.16910860642346667,0.2087877041138612,0.24589179935651825,0.11928718518775158,0.19078676057249827,0.2633482939579282,0.18693261085783902,0.07262779714232684,0.13575081670413913,0.17293727782930754 +local,b1200k.cps2022-2023-2024.acs000.s0,1200000,3,0.0,0,2508197,54291.8721808348,0.11442109267333646,0.1697465581137168,0.21367843862950298,0.24795960398287115,0.09556674683309047,0.18474428591598085,0.2177241262978927,0.18276741791355144,0.13500677718039364,0.25333931489785033,0.25305811365915726 +local,b1200k.cps2022-2023-2024.acs100.s0,1200000,3,1.0,0,1384080,276474.1544207648,0.11186055630023281,0.16908634247241222,0.20573088273723014,0.24778391771824335,0.11694219144644435,0.1890844995883244,0.25620828156733094,0.1842746202541827,0.07832999721526701,0.14074632726969327,0.17427100458629496 +national,natural.cps2024.acs100.s0,0,1,1.0,0,116990,18525.796531333322,0.12049983597210771,0.4162022514092171,0.2696116341504152,0.43919631953037513,0.1121591199800416,0.510954450513885,0.21615851274709622,0.1677059521885838,0.1293147045191051,0.27135322259468203,0.38058905989516406 +national,natural.cps2023-2024.acs100.s0,0,2,1.0,0,234556,31671.325578832886,0.11576155147355198,0.37538545244223415,0.2414815948793076,0.4004000810655697,0.1052393000286734,0.441756711126377,0.21174810554203347,0.1702495702655267,0.1290686746808808,0.24199563749570693,0.3307910796607623 +national,natural.cps2022-2023-2024.acs100.s0,0,3,1.0,0,352932,44942.90129089897,0.11860534730445384,0.3529233623194683,0.2497527061900134,0.377900474158411,0.10331386245050982,0.4196982722736993,0.2080660654966806,0.16878172366700006,0.13279008542371948,0.23553119972668884,0.3065896363426867 +national,b300k.cps0.acs100.s0,300000,0,1.0,0,300000,60492.10872186916,0.13169304429605677,0.28858515868432055,0.26125044364790023,0.35128318424714394,0.1506784259545128,0.3582662830085487,0.3032951550346929,0.17631137645123166,0.09625284915048912,0.1715016414699746,0.2687232158535489 +national,b300k.cps2024.acs000.s0,300000,1,0.0,0,629368,18566.939722103863,0.12063198826076389,0.32189089866483583,0.2717766467137627,0.3494025113619567,0.11192711452186348,0.3837250371889004,0.21478031358230748,0.16759991019765672,0.12924684142693119,0.22736645623756077,0.28332760642798005 +national,b300k.cps2024.acs100.s0,300000,1,1.0,0,361228,63296.633070639335,0.11953903904096654,0.2978400607957836,0.2488281348041939,0.3526511848914447,0.13256622347613956,0.3674673000569755,0.260413002804286,0.1597233602579953,0.08437693701326647,0.16781924184640074,0.2523281129652437 +national,b300k.cps2024.acs100.s1,300000,1,1.0,1,361228,63661.665857208754,0.11661914840475808,0.30168358520759253,0.25097710482668223,0.3612127672330394,0.1292905887274339,0.3738662138340741,0.26814652916269605,0.16668764568786598,0.08717123825305195,0.16713712232365704,0.25849148695700774 +national,b300k.cps2024.acs100.s2,300000,1,1.0,2,361228,65310.50293694685,0.11541598940902557,0.3005220010224059,0.24795753418976757,0.3686085945173797,0.12704222296996678,0.37203909943411284,0.1936747199064423,0.15140609544121633,0.08533563592623239,0.16393389505788147,0.254166588886442 +national,b300k.cps2023-2024.acs000.s0,300000,2,0.0,0,628217,31712.95601798473,0.11562764400908253,0.33054147462091266,0.241244989898294,0.3541385957210492,0.10525161471376977,0.3912707474902042,0.2117635469327823,0.1703353292068738,0.12890778289864524,0.2231795994140469,0.28072080399957905 +national,b300k.cps2023-2024.acs100.s0,300000,2,1.0,0,422543,65907.76439890644,0.11888640763864694,0.2878142425229445,0.23613502945233358,0.34100599629947437,0.12372753888842442,0.36061429401905143,0.21720632272633086,0.17130848948985308,0.09677859722087798,0.17523798284035028,0.25050935671635044 +national,b300k.cps2022-2023-2024.acs000.s0,300000,3,0.0,0,627089,44983.64315566284,0.11854427670272775,0.3321059867888933,0.25016928296359214,0.36163690746942406,0.10326926102077237,0.3931206653033833,0.20768612837662662,0.16883232591661937,0.13281746235379505,0.22605383311475916,0.2826408179097745 +national,b300k.cps2022-2023-2024.acs100.s0,300000,3,1.0,0,484080,69064.95015142651,0.11331166686918707,0.28861273444626007,0.2175345096397957,0.3433914082891061,0.11122761415655996,0.3557118942484613,0.18389306059868185,0.1694656640096662,0.11069211048143446,0.18794391029654156,0.2565155370254675 +national,b300k.cps2022-2023-2024.acs100.s1,300000,3,1.0,1,484080,69333.01365841262,0.11376496397463738,0.29300968619110856,0.2305607520155476,0.34018024084652343,0.11444292204091333,0.36409657696436076,0.19885977768618832,0.15892294151193456,0.10997438651139074,0.18969600467703118,0.258482206028408 +national,b300k.cps2022-2023-2024.acs100.s2,300000,3,1.0,2,484080,69661.27215264387,0.11325548479881786,0.2901801531316787,0.22415015708249011,0.35363214799932335,0.1142276152315121,0.35513195329635117,0.21213674854359396,0.16150427764582204,0.10941265707477578,0.18722235416021119,0.26094218345547 +national,b600k.cps0.acs100.s0,600000,0,1.0,0,600000,119288.30412767422,0.1262291246707833,0.2616982759657887,0.24966655406897992,0.34241876849049036,0.14197510217799877,0.32361559846110066,0.2929448280688965,0.18272324742321502,0.09199438516595929,0.15584750034837894,0.23180857341310068 +national,b600k.cps2024.acs000.s0,600000,1,0.0,0,1258830,18612.508981182837,0.12057185251169063,0.30687692340538353,0.2721350308405871,0.33999991743309776,0.11175801102457911,0.36217559115777576,0.2137667160204601,0.16789701330967022,0.12942095040140011,0.21997932104710263,0.26236143430082415 +national,b600k.cps2024.acs050.s0,600000,1,0.5,0,960045,45347.92882155529,0.11229787192101229,0.2717570068677701,0.22744779909141397,0.3195168688854576,0.11440855161234355,0.33195568945586346,0.1980126668984462,0.16224079914628323,0.10443356070238295,0.17423734863805407,0.2304157731970084 +national,b600k.cps2024.acs100.s0,600000,1,1.0,0,661228,121891.03572378987,0.11908144246826739,0.26175712201284923,0.23678916833887328,0.3386348678000625,0.12639218991981416,0.32380095096613976,0.26317788342170323,0.16848626972379935,0.07397479512640652,0.1428218204216333,0.21662867894568788 +national,b600k.cps2023-2024.acs000.s0,600000,2,0.0,0,1256347,31780.55376763681,0.11542272966741521,0.31332495815823175,0.24089602188398598,0.33438566321263324,0.10524017537062978,0.3679213205348031,0.2116351652999952,0.17051499247871507,0.1289320903995661,0.21499031399206195,0.25916742070039467 +national,b600k.cps2023-2024.acs100.s0,600000,2,1.0,0,722543,114433.20966057874,0.11471415226363739,0.2632056561288949,0.22528352031241805,0.329919322491642,0.12315745579178716,0.32541715634264745,0.24584572541285485,0.1594929954913748,0.0858102792358803,0.15195663710199417,0.21782355348432747 +national,b600k.cps2022-2023-2024.acs000.s0,600000,3,0.0,0,1254039,45050.38874639817,0.11833054582309997,0.31285834793313,0.2497558167425825,0.33705595250545295,0.1031874802625938,0.3648460542048347,0.20797277066731495,0.16812914955780833,0.13282925144140414,0.21775201596271673,0.2605295301294965 +national,b600k.cps2022-2023-2024.acs050.s0,600000,3,0.5,0,1019084,77830.18085078364,0.11140789359832513,0.27158268963159177,0.21346085314456828,0.3188925375284966,0.1115046834722531,0.33195745787437014,0.18740334543196172,0.16310377019843816,0.11295379863337626,0.18167231191613473,0.23213254921021667 +national,b600k.cps2022-2023-2024.acs100.s0,600000,3,1.0,0,784080,113040.62619633827,0.11535204156468655,0.26556257898190716,0.2210704782651005,0.32624272978471713,0.11602189617659167,0.3264735047442763,0.2248545879476049,0.15873853658076328,0.0974352559919048,0.16329383882848475,0.22746881055474846 +national,b1200k.cps0.acs100.s0,1200000,0,1.0,0,1200000,233507.8983854827,0.12454062249495829,0.24097675335257274,0.23197237474725407,0.30764609969672274,0.13521094558855334,0.29586659384861,0.2996804566303589,0.18441106064342377,0.0917842035176887,0.1466813554821483,0.20483903709451692 +national,b1200k.cps2024.acs000.s0,1200000,1,0.0,0,2517604,18675.74777381174,0.12040645674548298,0.30086799088948174,0.27262464031059574,0.3231392586379741,0.11162758094435697,0.3544144309845088,0.21153125590840233,0.16804774526293845,0.12940805275643452,0.21681713600225846,0.25153887807826525 +national,b1200k.cps2024.acs100.s0,1200000,1,1.0,0,1261228,239079.8688512916,0.11974241438910847,0.23870036086549926,0.22843448064670446,0.30307481919080115,0.12662306516466945,0.2962492517299004,0.26644343307680296,0.17531622479503287,0.07530363394825186,0.13386317682334467,0.19145386195131606 +national,b1200k.cps2023-2024.acs000.s0,1200000,2,0.0,0,2512844,31904.85055324262,0.11527960793480384,0.3030122806705822,0.23993486065598704,0.32792238604490337,0.10524622022884024,0.35415598544893173,0.21081576411829464,0.1701091296385201,0.12894951123162934,0.21222202625655778,0.24812939069358525 +national,b1200k.cps2023-2024.acs100.s0,1200000,2,1.0,0,1322543,230272.02491931393,0.11573533800600526,0.24047861362866643,0.21910535458696764,0.297947321629199,0.12140193109356652,0.2990649297438268,0.254270666452558,0.16789323516569246,0.07369448258832513,0.1311205970234169,0.1869661997719246 +national,b1200k.cps2022-2023-2024.acs000.s0,1200000,3,0.0,0,2508197,45160.28249329324,0.11867196264629083,0.30242409456170055,0.2513346707648975,0.3235953533512478,0.103106292409962,0.35154523730343396,0.20790520556155948,0.16777266351564055,0.13275665907083536,0.21254249073410422,0.2468187433405679 +national,b1200k.cps2022-2023-2024.acs100.s0,1200000,3,1.0,0,1384080,222919.7725749223,0.11332654624626497,0.24370249674460634,0.2170112714257001,0.30008669635968993,0.11848225108641687,0.3009724729875966,0.23949547435783827,0.16572583257448276,0.081210585041972,0.13451133959848416,0.18857556042057552 diff --git a/experiments/us-support-mix-bakeoff-20260930/headline.md b/experiments/us-support-mix-bakeoff-20260930/headline.md new file mode 100644 index 0000000000..ae9def5bda --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/headline.md @@ -0,0 +1,69 @@ +### local product + +| Arm | Rows | Distinct hh | ESS (distinct) | CPS-native nat | state | CD | PEP demog | ACS-native state | CD | county | Solve min | Peak GB | +|---|---|---|---|---|---|---|---|---|---|---|---|---| +| natural.cps2024.acs100.s0 | 116,990 | 55,762 | 26,267 | 0.356 | 0.199 | 0.341 | 0.130 | 0.131 | 0.278 | 0.342 | 6.1 | 4.3 | +| natural.cps2023-2024.acs100.s0 | 234,556 | 92,547 | 38,976 | 0.299 | 0.176 | 0.279 | 0.143 | 0.133 | 0.266 | 0.316 | 11.7 | 5.4 | +| natural.cps2022-2023-2024.acs100.s0 | 352,932 | 130,294 | 52,074 | 0.265 | 0.161 | 0.258 | 0.152 | 0.134 | 0.263 | 0.299 | 12.9 | 6.4 | +| b300k.cps0.acs100.s0 | 300,000 | 300,000 | 88,739 | 0.375 | 0.212 | 0.264 | 0.162 | 0.082 | 0.151 | 0.224 | 18.9 | 6.0 | +| b300k.cps2024.acs000.s0 | 629,368 | 55,762 | 25,941 | 0.301 | 0.185 | 0.242 | 0.149 | 0.131 | 0.265 | 0.279 | 23.0 | 9.4 | +| b300k.cps2024.acs100.s0 | 361,228 | 300,000 | 93,726 | 0.380 | 0.186 | 0.242 | 0.153 | 0.080 | 0.155 | 0.223 | 34.0 | 2.4 | +| b300k.cps2024.acs100.s1 | 361,228 | 300,000 | 94,328 | 0.337 | 0.194 | 0.248 | 0.167 | 0.081 | 0.152 | 0.220 | 10.9 | 6.7 | +| b300k.cps2024.acs100.s2 | 361,228 | 300,000 | 96,020 | 0.368 | 0.183 | 0.252 | 0.151 | 0.077 | 0.151 | 0.219 | 9.3 | 6.7 | +| b300k.cps2023-2024.acs000.s0 | 628,217 | 92,547 | 39,843 | 0.276 | 0.169 | 0.234 | 0.162 | 0.133 | 0.261 | 0.278 | 23.6 | 9.4 | +| b300k.cps2023-2024.acs100.s0 | 422,543 | 280,534 | 85,273 | 0.338 | 0.180 | 0.243 | 0.155 | 0.096 | 0.184 | 0.235 | 28.4 | 7.2 | +| b300k.cps2022-2023-2024.acs000.s0 | 627,089 | 130,294 | 53,841 | 0.262 | 0.159 | 0.237 | 0.160 | 0.134 | 0.260 | 0.281 | 21.0 | 9.2 | +| b300k.cps2022-2023-2024.acs100.s0 | 484,080 | 261,442 | 83,424 | 0.304 | 0.172 | 0.236 | 0.162 | 0.110 | 0.205 | 0.251 | 35.4 | 7.6 | +| b300k.cps2022-2023-2024.acs100.s1 | 484,080 | 261,442 | 84,651 | 0.337 | 0.167 | 0.240 | 0.165 | 0.110 | 0.205 | 0.250 | 12.5 | 7.7 | +| b300k.cps2022-2023-2024.acs100.s2 | 484,080 | 261,442 | 83,676 | 0.310 | 0.165 | 0.239 | 0.165 | 0.110 | 0.202 | 0.251 | 19.1 | 7.7 | +| b600k.cps0.acs100.s0 | 600,000 | 600,000 | 155,143 | 0.371 | 0.192 | 0.238 | 0.180 | 0.081 | 0.145 | 0.198 | 18.0 | 8.3 | +| b600k.cps2024.acs000.s0 | 1,258,830 | 55,762 | 24,855 | 0.293 | 0.179 | 0.222 | 0.161 | 0.131 | 0.260 | 0.265 | 42.1 | 15.6 | +| b600k.cps2024.acs050.s0 | 960,045 | 327,881 | 55,462 | 0.352 | 0.171 | 0.218 | 0.167 | 0.102 | 0.198 | 0.226 | 29.8 | 10.6 | +| b600k.cps2024.acs100.s0 | 661,228 | 600,000 | 161,804 | 0.367 | 0.180 | 0.225 | 0.176 | 0.072 | 0.137 | 0.192 | 29.8 | 8.1 | +| b600k.cps2023-2024.acs000.s0 | 1,256,347 | 92,547 | 39,230 | 0.278 | 0.164 | 0.214 | 0.171 | 0.133 | 0.257 | 0.264 | 39.5 | 15.5 | +| b600k.cps2023-2024.acs100.s0 | 722,543 | 580,534 | 155,524 | 0.366 | 0.177 | 0.220 | 0.171 | 0.081 | 0.150 | 0.198 | 26.0 | 9.9 | +| b600k.cps2022-2023-2024.acs000.s0 | 1,254,039 | 130,294 | 54,305 | 0.264 | 0.156 | 0.217 | 0.173 | 0.134 | 0.256 | 0.263 | 38.1 | 14.7 | +| b600k.cps2022-2023-2024.acs050.s0 | 1,019,084 | 345,868 | 91,100 | 0.295 | 0.163 | 0.217 | 0.174 | 0.113 | 0.209 | 0.232 | 28.9 | 13.1 | +| b600k.cps2022-2023-2024.acs100.s0 | 784,080 | 561,442 | 150,595 | 0.360 | 0.173 | 0.220 | 0.166 | 0.092 | 0.166 | 0.207 | 24.6 | 10.5 | +| b1200k.cps0.acs100.s0 | 1,200,000 | 1,200,000 | 272,607 | 0.364 | 0.176 | 0.210 | 0.191 | 0.084 | 0.146 | 0.180 | 31.1 | 13.8 | +| b1200k.cps2024.acs000.s0 | 2,517,604 | 55,762 | 23,843 | 0.286 | 0.179 | 0.206 | 0.172 | 0.132 | 0.258 | 0.257 | 139.9 | 27.0 | +| b1200k.cps2024.acs100.s0 | 1,261,228 | 1,200,000 | 281,840 | 0.357 | 0.170 | 0.209 | 0.187 | 0.072 | 0.136 | 0.174 | 38.6 | 14.6 | +| b1200k.cps2023-2024.acs000.s0 | 2,512,844 | 92,547 | 38,732 | 0.275 | 0.162 | 0.202 | 0.179 | 0.133 | 0.254 | 0.254 | 210.0 | 18.0 | +| b1200k.cps2023-2024.acs100.s0 | 1,322,543 | 1,180,534 | 278,972 | 0.353 | 0.169 | 0.209 | 0.185 | 0.073 | 0.136 | 0.173 | 37.0 | 15.2 | +| b1200k.cps2022-2023-2024.acs000.s0 | 2,508,197 | 130,294 | 54,292 | 0.263 | 0.156 | 0.206 | 0.181 | 0.135 | 0.253 | 0.253 | 54.8 | 27.9 | +| b1200k.cps2022-2023-2024.acs100.s0 | 1,384,080 | 1,161,442 | 276,474 | 0.346 | 0.166 | 0.208 | 0.182 | 0.078 | 0.141 | 0.174 | 35.7 | 15.9 | + +### national product + +| Arm | Rows | Distinct hh | ESS (distinct) | CPS-native nat | state | CD | PEP demog | ACS-native state | CD | county | Solve min | Peak GB | +|---|---|---|---|---|---|---|---|---|---|---|---|---| +| natural.cps2024.acs100.s0 | 116,990 | 55,762 | 18,526 | 0.244 | 0.189 | 0.487 | 0.166 | 0.129 | 0.271 | 0.381 | 4.5 | 4.0 | +| natural.cps2023-2024.acs100.s0 | 234,556 | 92,547 | 31,671 | 0.251 | 0.173 | 0.428 | 0.168 | 0.129 | 0.242 | 0.331 | 7.7 | 4.6 | +| natural.cps2022-2023-2024.acs100.s0 | 352,932 | 130,294 | 44,943 | 0.236 | 0.175 | 0.406 | 0.167 | 0.133 | 0.236 | 0.307 | 8.2 | 5.1 | +| b300k.cps0.acs100.s0 | 300,000 | 300,000 | 60,492 | 0.251 | 0.210 | 0.356 | 0.174 | 0.096 | 0.172 | 0.269 | 18.1 | 5.0 | +| b300k.cps2024.acs000.s0 | 629,368 | 55,762 | 18,567 | 0.243 | 0.189 | 0.372 | 0.166 | 0.129 | 0.227 | 0.283 | 15.1 | 7.1 | +| b300k.cps2024.acs100.s0 | 361,228 | 300,000 | 63,297 | 0.274 | 0.193 | 0.363 | 0.158 | 0.084 | 0.168 | 0.252 | 13.4 | 1.4 | +| b300k.cps2024.acs100.s1 | 361,228 | 300,000 | 63,662 | 0.253 | 0.193 | 0.370 | 0.165 | 0.087 | 0.167 | 0.258 | 7.4 | 5.5 | +| b300k.cps2024.acs100.s2 | 361,228 | 300,000 | 65,311 | 0.254 | 0.185 | 0.371 | 0.150 | 0.085 | 0.164 | 0.254 | 6.9 | 5.4 | +| b300k.cps2023-2024.acs000.s0 | 628,217 | 92,547 | 31,713 | 0.251 | 0.173 | 0.379 | 0.168 | 0.129 | 0.223 | 0.281 | 15.7 | 7.1 | +| b300k.cps2023-2024.acs100.s0 | 422,543 | 280,534 | 65,908 | 0.215 | 0.180 | 0.354 | 0.169 | 0.097 | 0.175 | 0.251 | 10.2 | 5.8 | +| b300k.cps2022-2023-2024.acs000.s0 | 627,089 | 130,294 | 44,984 | 0.236 | 0.175 | 0.383 | 0.167 | 0.133 | 0.226 | 0.283 | 15.4 | 6.8 | +| b300k.cps2022-2023-2024.acs100.s0 | 484,080 | 261,442 | 69,065 | 0.192 | 0.163 | 0.352 | 0.168 | 0.111 | 0.188 | 0.257 | 21.6 | 6.2 | +| b300k.cps2022-2023-2024.acs100.s1 | 484,080 | 261,442 | 69,333 | 0.278 | 0.172 | 0.356 | 0.157 | 0.110 | 0.190 | 0.258 | 10.2 | 6.2 | +| b300k.cps2022-2023-2024.acs100.s2 | 484,080 | 261,442 | 69,661 | 0.171 | 0.170 | 0.355 | 0.160 | 0.109 | 0.187 | 0.261 | 9.8 | 5.9 | +| b600k.cps0.acs100.s0 | 600,000 | 600,000 | 119,288 | 0.285 | 0.200 | 0.330 | 0.181 | 0.092 | 0.156 | 0.232 | 14.3 | 6.5 | +| b600k.cps2024.acs000.s0 | 1,258,830 | 55,762 | 18,613 | 0.243 | 0.189 | 0.355 | 0.166 | 0.129 | 0.220 | 0.262 | 27.0 | 11.0 | +| b600k.cps2024.acs050.s0 | 960,045 | 327,881 | 45,348 | 0.250 | 0.170 | 0.328 | 0.160 | 0.104 | 0.174 | 0.230 | 19.9 | 9.2 | +| b600k.cps2024.acs100.s0 | 661,228 | 600,000 | 121,891 | 0.255 | 0.185 | 0.329 | 0.167 | 0.074 | 0.143 | 0.217 | 23.9 | 7.0 | +| b600k.cps2023-2024.acs000.s0 | 1,256,347 | 92,547 | 31,781 | 0.251 | 0.173 | 0.357 | 0.168 | 0.129 | 0.215 | 0.259 | 26.8 | 10.6 | +| b600k.cps2023-2024.acs100.s0 | 722,543 | 580,534 | 114,433 | 0.219 | 0.177 | 0.327 | 0.158 | 0.086 | 0.152 | 0.218 | 22.1 | 7.5 | +| b600k.cps2022-2023-2024.acs000.s0 | 1,254,039 | 130,294 | 45,050 | 0.235 | 0.175 | 0.356 | 0.166 | 0.133 | 0.218 | 0.261 | 24.8 | 10.8 | +| b600k.cps2022-2023-2024.acs050.s0 | 1,019,084 | 345,868 | 77,830 | 0.206 | 0.162 | 0.328 | 0.161 | 0.113 | 0.182 | 0.232 | 20.1 | 9.3 | +| b600k.cps2022-2023-2024.acs100.s0 | 784,080 | 561,442 | 113,041 | 0.244 | 0.170 | 0.326 | 0.157 | 0.097 | 0.163 | 0.227 | 16.6 | 7.9 | +| b1200k.cps0.acs100.s0 | 1,200,000 | 1,200,000 | 233,508 | 0.267 | 0.190 | 0.300 | 0.182 | 0.092 | 0.147 | 0.205 | 19.7 | 10.0 | +| b1200k.cps2024.acs000.s0 | 2,517,604 | 55,762 | 18,676 | 0.243 | 0.189 | 0.344 | 0.166 | 0.129 | 0.217 | 0.252 | 50.2 | 18.3 | +| b1200k.cps2024.acs100.s0 | 1,261,228 | 1,200,000 | 239,080 | 0.258 | 0.182 | 0.299 | 0.173 | 0.075 | 0.134 | 0.191 | 24.0 | 10.6 | +| b1200k.cps2023-2024.acs000.s0 | 2,512,844 | 92,547 | 31,905 | 0.251 | 0.172 | 0.345 | 0.168 | 0.129 | 0.212 | 0.248 | 50.9 | 17.1 | +| b1200k.cps2023-2024.acs100.s0 | 1,322,543 | 1,180,534 | 230,272 | 0.260 | 0.174 | 0.299 | 0.166 | 0.074 | 0.131 | 0.187 | 23.0 | 11.0 | +| b1200k.cps2022-2023-2024.acs000.s0 | 2,508,197 | 130,294 | 45,160 | 0.235 | 0.176 | 0.342 | 0.166 | 0.133 | 0.213 | 0.247 | 107.3 | 18.3 | +| b1200k.cps2022-2023-2024.acs100.s0 | 1,384,080 | 1,161,442 | 222,920 | 0.261 | 0.171 | 0.301 | 0.164 | 0.081 | 0.135 | 0.189 | 23.9 | 11.3 | diff --git a/experiments/us-support-mix-bakeoff-20260930/holdout_by_dimension_level.csv b/experiments/us-support-mix-bakeoff-20260930/holdout_by_dimension_level.csv new file mode 100644 index 0000000000..f725098840 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/holdout_by_dimension_level.csv @@ -0,0 +1,601 @@ +product,arm,dimension_group,dimension,level,targets,capped_mean,weighted_capped_mean,median_rel,capped_mean_initial,unsupported +local,b1200k.cps0.acs100.s0,acs_native,demographics_pep,national,1.0,0.031136159134135165,0.031136159134135165,0.031136159134135165,0.01687877206984775,0.0 +local,b1200k.cps0.acs100.s0,acs_native,demographics_pep,state,82.0,0.19286922548605295,0.19739269558977326,0.19039047686453314,0.04257015050767078,0.0 +local,b1200k.cps0.acs100.s0,cps_native,income_components,cd,875.0,0.24448238340214953,0.17181224785345187,0.11727616920978653,0.38454838185340123,0.0 +local,b1200k.cps0.acs100.s0,cps_native,income_components,national,8.0,0.3103777197784714,0.20700686443726768,0.1395100002039102,0.4635469598128417,0.0 +local,b1200k.cps0.acs100.s0,cps_native,income_components,state,308.0,0.20647621436806693,0.1483440927074959,0.08895362696469541,0.36978813930519205,0.0 +local,b1200k.cps0.acs100.s0,cps_native,program_receipt,national,1.0,0.029039789069627106,0.029039789069627106,0.029039789069627106,0.03224964237470852,0.0 +local,b1200k.cps0.acs100.s0,cps_native,program_receipt,state,53.0,0.31823459303351853,0.21684614735180102,0.18893483013838433,0.41642954124675036,0.0 +local,b1200k.cps0.acs100.s0,cps_native,tax_items,cd,1772.0,0.19346215236328823,0.16884021701520516,0.11030378006333022,0.453593489770896,0.0 +local,b1200k.cps0.acs100.s0,cps_native,tax_items,national,25.0,0.3946709414926361,0.19171966578702446,0.2675993236456672,0.5735022997088989,2.0 +local,b1200k.cps0.acs100.s0,cps_native,tax_items,state,344.0,0.1271958904838077,0.08201589520349983,0.036541667967989494,0.3975102748162476,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.010729179501353797,0.010729179501353799,0.010729179501353797,0.0058557545138544186,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.18276741791355144,0.17795145630194242,0.17571908876086212,0.06947274184770601,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.24795960398287115,0.16065495969360394,0.12840173432277055,0.41459837672361416,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.29935919235534847,0.15495537296441067,0.1465053708749603,0.4782740570823931,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.21367843862950298,0.1334715477197718,0.09099205426134577,0.3339467143924983,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.01646739773176462,0.01646739773176462,0.01646739773176462,0.19867559908946433,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.2177241262978927,0.20783211837998317,0.15135228666841102,0.2921397722263,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.18474428591598085,0.176770215651062,0.09285874361543778,0.4399785423311982,0.0 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.26156677294169406,0.21910645938777187,0.21594996293740154,0.5291498415503633,2.0 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.09556674683309048,0.08495223230811838,0.033698929101499346,0.33883781338522934,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.021543245807295906,0.021543245807295906,0.021543245807295906,0.015382628295531922,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.1842746202541827,0.19052974896805416,0.15705058907193073,0.043461430521572225,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.24778391771824337,0.16889366673783202,0.11742227186217717,0.36967706910712117,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.2703684882459735,0.1674639049836868,0.06847059087963159,0.42701180053363924,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.20573088273723014,0.1415839034672543,0.09260464021592656,0.336453446112695,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.017016064870367338,0.017016064870367338,0.017016064870367338,0.001560893746850735,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.25620828156733094,0.16639768808640967,0.17070235072496218,0.37195145805988555,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.1890844995883244,0.16923519290694675,0.10263301744184945,0.4239846039175,0.0 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.3827330743547202,0.19559765418396424,0.26549874358136805,0.5560157530602818,2.0 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.11694219144644435,0.07814257499109467,0.03525375672155619,0.37028807025632865,0.0 +local,b1200k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.01015166708407202,0.01015166708407202,0.01015166708407202,0.008377589413013453,0.0 +local,b1200k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.18091450159282604,0.17419972258202296,0.1721449126651376,0.07560887119978749,0.0 +local,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.245660058038819,0.15586510311402255,0.11398931321044865,0.4205706570917942,0.0 +local,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.31740772403935485,0.16309548865459772,0.1805891073526219,0.5269651800077799,0.0 +local,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.22520642293189733,0.13456241386248313,0.09496434734847317,0.3547371991254122,0.0 +local,b1200k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.012997101847879234,0.012997101847879236,0.012997101847879234,0.2230673116161331,0.0 +local,b1200k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.23728528309773528,0.21386089968594652,0.16211010220864178,0.2965881008063,0.0 +local,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.18103017107743002,0.16843009084750352,0.09420053346651705,0.4499901440346591,0.0 +local,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.27130141741138536,0.2254397684722295,0.20446248054804364,0.5506343068650498,2.0 +local,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.09461582123755301,0.08019044498268842,0.03461109924632719,0.3518826507591661,0.0 +local,b1200k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.02586127518861045,0.02586127518861045,0.02586127518861045,0.01729985070538173,0.0 +local,b1200k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.186932610857839,0.19379613229263526,0.17036821445263822,0.04395537463408709,0.0 +local,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.2458917993565182,0.16888440832166013,0.11571829190276303,0.37408290308677483,0.0 +local,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.2791515694179675,0.1778163443093935,0.07798405821515045,0.43633847203582976,0.0 +local,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2087877041138612,0.14340423120294002,0.09681532699730432,0.34723657081554843,0.0 +local,b1200k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.0210527469483214,0.0210527469483214,0.0210527469483214,0.007300241349242352,0.0 +local,b1200k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.26334829395792814,0.17619746105613662,0.14513285119425093,0.3867277099908303,0.0 +local,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.19078676057249827,0.1692818092657885,0.10271521091372122,0.4350560038999481,0.0 +local,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.38933345271721614,0.19478422723019767,0.26608469458949185,0.5612460474999122,2.0 +local,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.11928718518775161,0.07923152595011766,0.03503517465488967,0.3809892888582213,0.0 +local,b1200k.cps2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.0164129965833176,0.0164129965833176,0.0164129965833176,0.020249560721814663,0.0 +local,b1200k.cps2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.17394744597746561,0.16300773407423627,0.1647190433866017,0.09501372306127602,0.0 +local,b1200k.cps2024.acs000.s0,cps_native,income_components,cd,875.0,0.24886446782578253,0.15716003983171595,0.1283104982701864,0.43813763234144554,0.0 +local,b1200k.cps2024.acs000.s0,cps_native,income_components,national,8.0,0.32479169063218366,0.17108379180456929,0.1549621647733696,0.5231357614058957,0.0 +local,b1200k.cps2024.acs000.s0,cps_native,income_components,state,308.0,0.2510104848956959,0.13762167513872745,0.0970196105896878,0.3691542979336075,0.0 +local,b1200k.cps2024.acs000.s0,cps_native,program_receipt,national,1.0,0.011864248303568086,0.011864248303568085,0.011864248303568086,0.24795438764739083,0.0 +local,b1200k.cps2024.acs000.s0,cps_native,program_receipt,state,53.0,0.23151973362356593,0.2102810472330338,0.17499622239817336,0.3147145965159252,0.0 +local,b1200k.cps2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.18464326791535787,0.1684828240312832,0.10686808089507699,0.4533561705186073,0.0 +local,b1200k.cps2024.acs000.s0,cps_native,tax_items,national,25.0,0.28505622844904693,0.22035487731789677,0.21079170624995686,0.5600452269263307,2.0 +local,b1200k.cps2024.acs000.s0,cps_native,tax_items,state,344.0,0.10541087233889969,0.08497048746188214,0.041457952733922054,0.36059836075011376,0.0 +local,b1200k.cps2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.029765902613478327,0.029765902613478324,0.029765902613478327,0.0175968395202377,0.0 +local,b1200k.cps2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.18843601526452441,0.19537039073828183,0.17136796486059452,0.04383220009093377,0.0 +local,b1200k.cps2024.acs100.s0,cps_native,income_components,cd,875.0,0.24499506533664986,0.17019950114392216,0.11429856129460997,0.3786111122144415,0.0 +local,b1200k.cps2024.acs100.s0,cps_native,income_components,national,8.0,0.2929664677392368,0.1909061687239925,0.10395437152954715,0.4444228133539717,0.0 +local,b1200k.cps2024.acs100.s0,cps_native,income_components,state,308.0,0.2035143391113478,0.14418438896968483,0.08376281978397702,0.3580112185950272,0.0 +local,b1200k.cps2024.acs100.s0,cps_native,program_receipt,national,1.0,0.025078346581670272,0.025078346581670272,0.025078346581670272,0.018931121048764134,0.0 +local,b1200k.cps2024.acs100.s0,cps_native,program_receipt,state,53.0,0.27802381016808264,0.19336972624383997,0.15834689986872777,0.4017073225890307,0.0 +local,b1200k.cps2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.1906566975362283,0.1679761639931759,0.10449080229742846,0.44347825448303935,0.0 +local,b1200k.cps2024.acs100.s0,cps_native,tax_items,national,25.0,0.390277000615379,0.19297092414661166,0.2599562092269475,0.5678938650396395,2.0 +local,b1200k.cps2024.acs100.s0,cps_native,tax_items,state,344.0,0.12267272174567183,0.08074275224387023,0.036093444206159064,0.3884940390560251,0.0 +local,b300k.cps0.acs100.s0,acs_native,demographics_pep,national,1.0,0.04613637508701725,0.04613637508701725,0.04613637508701725,0.013400519618049613,0.0 +local,b300k.cps0.acs100.s0,acs_native,demographics_pep,state,82.0,0.16305527686288307,0.15526183072373176,0.14332460355137772,0.06782021622343067,0.0 +local,b300k.cps0.acs100.s0,cps_native,income_components,cd,875.0,0.294729466333595,0.19866522935109282,0.18125682849349803,0.40117938753532867,0.0 +local,b300k.cps0.acs100.s0,cps_native,income_components,national,8.0,0.3168667839683797,0.2315921767982152,0.1512853223756738,0.4633596709819412,0.0 +local,b300k.cps0.acs100.s0,cps_native,income_components,state,308.0,0.23429272769351714,0.16060583314121718,0.14771709111300887,0.39529156481402894,0.0 +local,b300k.cps0.acs100.s0,cps_native,program_receipt,national,1.0,0.045639139865172755,0.045639139865172755,0.045639139865172755,0.026716643217532504,0.0 +local,b300k.cps0.acs100.s0,cps_native,program_receipt,state,53.0,0.3725842982247164,0.25206410461454043,0.22050760898466562,0.4086828465688528,0.0 +local,b300k.cps0.acs100.s0,cps_native,tax_items,cd,1772.0,0.24936527410608197,0.20674397272691042,0.15925475553972288,0.46464998602081803,0.0 +local,b300k.cps0.acs100.s0,cps_native,tax_items,national,25.0,0.40648490673997256,0.1769486675312633,0.2710627021483992,0.5557314764840549,2.0 +local,b300k.cps0.acs100.s0,cps_native,tax_items,state,344.0,0.16692357646531517,0.09696618994483201,0.048369335933678204,0.39805565541393706,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.007824599707914002,0.007824599707914002,0.007824599707914002,0.005855754513860456,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.16217286902976794,0.16007809400340423,0.16852507056905885,0.06947274184770443,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.2777977077074786,0.17877868353255552,0.14580724947027926,0.4291358398041085,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.3093507514427284,0.16865768856427055,0.14298597941212882,0.47827405708239845,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.2163641766925938,0.13588607727571864,0.09657481063547035,0.33394671439249957,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.020499541972688495,0.020499541972688495,0.020499541972688495,0.198675599089492,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.22075797974313865,0.20702798274394296,0.15880205258807806,0.29213977222629944,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.21735445534264175,0.20414932137098915,0.1252762499187775,0.4498356278356252,0.0 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.25693797259096685,0.22277716122680066,0.22265566770987513,0.5291498415503632,2.0 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.09789246569895065,0.08229540363228231,0.03773914020469085,0.3388378133852289,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.013288614675196155,0.013288614675196155,0.013288614675196155,0.0009409716770597445,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.16385886365388144,0.16377162949164062,0.1548001010894437,0.06665159124470905,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.27880472704664105,0.18001375843079329,0.1624115985992932,0.378976016399089,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.285121731159793,0.15827842257768845,0.15199606195462922,0.4001792562668704,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.23627019274520367,0.14340659492755445,0.09801627631698656,0.2968930490348722,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.015200434827783283,0.015200434827783283,0.015200434827783283,0.10285384071979277,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.2435255016791281,0.20842245144657345,0.18580835236219034,0.25653143587437,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.21537807872550357,0.1911484663543331,0.1298697141400701,0.39903498652118985,0.0 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.32130068285843044,0.19246221557897336,0.25228401251060023,0.44243279455805634,2.0 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.10353524278489436,0.0732986609106624,0.03794288012155626,0.32506149143830915,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,acs_native,demographics_pep,national,1.0,0.013142072603076335,0.013142072603076335,0.013142072603076335,0.00574457946282472,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,acs_native,demographics_pep,state,82.0,0.16658090945865134,0.16884983613714966,0.17310640714539632,0.06664303458801327,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,cd,875.0,0.2810324406006082,0.18076528627767982,0.16658327322072236,0.3795625454008541,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,national,8.0,0.28897112220822024,0.16153937383505854,0.15031534403869876,0.40663073072873945,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,state,308.0,0.22564925876059017,0.1429295220554709,0.09917269088853753,0.29021012659647627,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,program_receipt,national,1.0,0.01733286655302345,0.01733286655302345,0.01733286655302345,0.10131908878358668,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,program_receipt,state,53.0,0.234554556947064,0.20224093488813716,0.13022263582852156,0.294780676004153,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,cd,1772.0,0.21924479189506244,0.19626783652797594,0.13159701877970728,0.4012667459792321,0.0 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,national,25.0,0.3656325624101904,0.20570368941616757,0.2830450357896359,0.47103181994044085,2.0 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,state,344.0,0.1049204503493655,0.07282324348899956,0.036146361486522144,0.32856345310502155,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,acs_native,demographics_pep,national,1.0,0.01235527175196395,0.01235527175196395,0.01235527175196395,0.007908708579123801,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,acs_native,demographics_pep,state,82.0,0.16657533865686952,0.1672823579008103,0.16607996924950202,0.06573246253483321,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,cd,875.0,0.28318014557709364,0.18211220197798347,0.16615798046963187,0.3887871720801931,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,national,8.0,0.27127343247232183,0.1537352562814176,0.0873526325204758,0.39910792254316074,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,state,308.0,0.2242510038481965,0.13953207660206862,0.09857192362186182,0.3099745978695418,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,program_receipt,national,1.0,0.019236898516675194,0.019236898516675194,0.019236898516675194,0.10150007749422552,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,program_receipt,state,53.0,0.23294838474251592,0.20756660866497736,0.16529425061114494,0.25740969061476937,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,cd,1772.0,0.2177488008548624,0.1954198976661449,0.12593471605779394,0.39822220731769076,0.0 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,national,25.0,0.33373430850340724,0.19667268082444178,0.22799252603045805,0.4299717016824443,2.0 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,state,344.0,0.10067242177324873,0.07301109766198602,0.03392417128596914,0.3286387635044876,0.0 +local,b300k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.007680414223032498,0.007680414223032498,0.007680414223032498,0.008377589413330727,0.0 +local,b300k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.1641883644859509,0.15864544098928793,0.1556236885847634,0.07560887119978785,0.0 +local,b300k.cps2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.27907417105340565,0.17755015132135948,0.15229107884163712,0.4324701136016301,0.0 +local,b300k.cps2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.33464102022280334,0.18166024816038445,0.2071216718145077,0.5269651800078506,0.0 +local,b300k.cps2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.23299819017636772,0.13999896963807976,0.09752960697600024,0.3547371991254107,0.0 +local,b300k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.019244183153401716,0.019244183153401716,0.019244183153401716,0.2230673116162228,0.0 +local,b300k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.24221674734488627,0.21388929297706508,0.1620711094419218,0.2965881008063,0.0 +local,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.21248577583951866,0.19468559628778526,0.12224344878901894,0.45433502110786905,0.0 +local,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.2676721138737568,0.22531464738925927,0.20843189795681233,0.5506343068650513,2.0 +local,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.10086916449026684,0.08514362294024419,0.043414895501241606,0.3518826507591654,0.0 +local,b300k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.015042714721128185,0.015042714721128184,0.015042714721128185,0.009055290556208049,0.0 +local,b300k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.15692966173306047,0.15957049649684313,0.14563989932811625,0.07085969497722987,0.0 +local,b300k.cps2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.2809150155724099,0.18150074836374783,0.15774660560943668,0.3669339140684229,0.0 +local,b300k.cps2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.3142464709277277,0.17932139125613844,0.22340456847194134,0.40289655211130726,0.0 +local,b300k.cps2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2320873385842164,0.14422190238302268,0.09771340817660498,0.30710137281183186,0.0 +local,b300k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.021498827244479626,0.021498827244479626,0.021498827244479626,0.07092573571910388,0.0 +local,b300k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.27350756252784914,0.215720017967051,0.21009133366667745,0.3076903162520198,0.0 +local,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.22387840042788953,0.1961717270945094,0.13737919572294158,0.4116350637089717,0.0 +local,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.3583157373248242,0.1989649176908054,0.26492075911453306,0.4877861936814006,2.0 +local,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.11975072727313721,0.07939725645932466,0.04150452267173151,0.34907125215334495,0.0 +local,b300k.cps2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.017286281231718603,0.017286281231718603,0.017286281231718603,0.020249560721687862,0.0 +local,b300k.cps2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.15011568577342907,0.13913290518975377,0.13474400332734793,0.09501372306127615,0.0 +local,b300k.cps2024.acs000.s0,cps_native,income_components,cd,875.0,0.28776107808594537,0.1805867612590885,0.16571636738791873,0.4457556923077236,0.0 +local,b300k.cps2024.acs000.s0,cps_native,income_components,national,8.0,0.3596852899456623,0.20026317944306773,0.21039701508217484,0.523135761405959,0.0 +local,b300k.cps2024.acs000.s0,cps_native,income_components,state,308.0,0.2557141656365252,0.1453354667844506,0.0981407717203235,0.3691542979336072,0.0 +local,b300k.cps2024.acs000.s0,cps_native,program_receipt,national,1.0,0.01754355602872212,0.01754355602872212,0.01754355602872212,0.24795438764745617,0.0 +local,b300k.cps2024.acs000.s0,cps_native,program_receipt,state,53.0,0.23760123984607015,0.21047144610803972,0.1883139094869982,0.31471459651592637,0.0 +local,b300k.cps2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.21868788082614776,0.20033214090279655,0.13478441975313818,0.4534903925546885,0.0 +local,b300k.cps2024.acs000.s0,cps_native,tax_items,national,25.0,0.2939058863707629,0.221437167129482,0.22660818637292024,0.5600452269263321,2.0 +local,b300k.cps2024.acs000.s0,cps_native,tax_items,state,344.0,0.11267807862514276,0.09001130912778534,0.04679407265733132,0.36059836075011625,0.0 +local,b300k.cps2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.027096046886771048,0.027096046886771048,0.027096046886771048,0.014852052704921279,0.0 +local,b300k.cps2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.15494646816772428,0.1571204833804719,0.13452221351828286,0.06445479312430935,0.0 +local,b300k.cps2024.acs100.s0,cps_native,income_components,cd,875.0,0.27773335987883097,0.1823194021611194,0.14935413370703088,0.37947904444129243,0.0 +local,b300k.cps2024.acs100.s0,cps_native,income_components,national,8.0,0.3005578264792729,0.19139508737908384,0.13769784485293254,0.42741683668729064,0.0 +local,b300k.cps2024.acs100.s0,cps_native,income_components,state,308.0,0.22237544973362444,0.14673088694901273,0.09812474933857473,0.33824210059819737,0.0 +local,b300k.cps2024.acs100.s0,cps_native,program_receipt,national,1.0,0.03478201981941662,0.03478201981941662,0.03478201981941662,0.028593527974454302,0.0 +local,b300k.cps2024.acs100.s0,cps_native,program_receipt,state,53.0,0.2925484443868418,0.19516744728289295,0.17321897638242398,0.34807781419533446,0.0 +local,b300k.cps2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.22506711078100425,0.19274816488832877,0.1381433298887349,0.4360689674424504,0.0 +local,b300k.cps2024.acs100.s0,cps_native,tax_items,national,25.0,0.4197970081409376,0.19499417514580433,0.28242943198694104,0.5139408328554795,2.0 +local,b300k.cps2024.acs100.s0,cps_native,tax_items,state,344.0,0.13611389092845289,0.08330686973735,0.04686492876300517,0.37378093996633127,0.0 +local,b300k.cps2024.acs100.s1,acs_native,demographics_pep,national,1.0,0.03998576643536792,0.03998576643536792,0.03998576643536792,0.024319002241314284,0.0 +local,b300k.cps2024.acs100.s1,acs_native,demographics_pep,state,82.0,0.16845330693532218,0.1648152347877793,0.15901975389343065,0.06808787942333058,0.0 +local,b300k.cps2024.acs100.s1,cps_native,income_components,cd,875.0,0.28571427478389977,0.18988884763134373,0.1701394248138274,0.3859151316270397,0.0 +local,b300k.cps2024.acs100.s1,cps_native,income_components,national,8.0,0.30025792698520365,0.19214291716556636,0.11784041792585902,0.4164986685812917,0.0 +local,b300k.cps2024.acs100.s1,cps_native,income_components,state,308.0,0.23419690043695093,0.1472741589758722,0.0940743493868682,0.3496512433174437,0.0 +local,b300k.cps2024.acs100.s1,cps_native,program_receipt,national,1.0,0.0381781493483003,0.0381781493483003,0.0381781493483003,0.019790816651314526,0.0 +local,b300k.cps2024.acs100.s1,cps_native,program_receipt,state,53.0,0.30919132639747754,0.2061713538576726,0.20842805922822402,0.3625495239345136,0.0 +local,b300k.cps2024.acs100.s1,cps_native,tax_items,cd,1772.0,0.2289217975598675,0.19860699784968633,0.13485737580393894,0.4348685230810899,0.0 +local,b300k.cps2024.acs100.s1,cps_native,tax_items,national,25.0,0.3609709702470712,0.18690286211852464,0.16559281620444544,0.5464793038665083,2.0 +local,b300k.cps2024.acs100.s1,cps_native,tax_items,state,344.0,0.14052842598636905,0.08670603734886947,0.04881739469997802,0.37359062516791974,0.0 +local,b300k.cps2024.acs100.s2,acs_native,demographics_pep,national,1.0,0.03956325894209345,0.03956325894209345,0.03956325894209345,0.023027727440425933,0.0 +local,b300k.cps2024.acs100.s2,acs_native,demographics_pep,state,82.0,0.15203325967658676,0.15128356600072032,0.12340856158231449,0.06508790792851012,0.0 +local,b300k.cps2024.acs100.s2,cps_native,income_components,cd,875.0,0.3005332842780463,0.19034848141767577,0.1692251232441425,0.3865982293362447,0.0 +local,b300k.cps2024.acs100.s2,cps_native,income_components,national,8.0,0.305674408628534,0.1953175092608103,0.1447768029110782,0.42824365791626173,0.0 +local,b300k.cps2024.acs100.s2,cps_native,income_components,state,308.0,0.22412856083303512,0.14561241513787077,0.09746643288248488,0.340061249865294,0.0 +local,b300k.cps2024.acs100.s2,cps_native,program_receipt,national,1.0,0.038609121212519214,0.038609121212519214,0.038609121212519214,0.018498927612313632,0.0 +local,b300k.cps2024.acs100.s2,cps_native,program_receipt,state,53.0,0.2615392329395728,0.18313048246773075,0.18044323939484666,0.3764203330394173,0.0 +local,b300k.cps2024.acs100.s2,cps_native,tax_items,cd,1772.0,0.22824587666633092,0.19356173768597687,0.1405976301459002,0.43937367428801594,0.0 +local,b300k.cps2024.acs100.s2,cps_native,tax_items,national,25.0,0.4012823522070052,0.18780432026866872,0.21158374611127656,0.5628541538069328,2.0 +local,b300k.cps2024.acs100.s2,cps_native,tax_items,state,344.0,0.1332729999290088,0.08272127898801003,0.044221013805476106,0.38830933064683476,0.0 +local,b600k.cps0.acs100.s0,acs_native,demographics_pep,national,1.0,0.039230761412120306,0.039230761412120306,0.039230761412120306,0.02241502856907775,0.0 +local,b600k.cps0.acs100.s0,acs_native,demographics_pep,state,82.0,0.18202600101728358,0.17686546778739057,0.1710507002917423,0.0487503738933647,0.0 +local,b600k.cps0.acs100.s0,cps_native,income_components,cd,875.0,0.2775302429807402,0.18723391990957997,0.1469910934813447,0.38854844009047707,0.0 +local,b600k.cps0.acs100.s0,cps_native,income_components,national,8.0,0.30934383463243964,0.21672963654658145,0.14217498029449926,0.4592578508590413,0.0 +local,b600k.cps0.acs100.s0,cps_native,income_components,state,308.0,0.21676364128605197,0.15364755179383097,0.10601247277463124,0.3794891946521371,0.0 +local,b600k.cps0.acs100.s0,cps_native,program_receipt,national,1.0,0.0405888554726851,0.0405888554726851,0.0405888554726851,0.029271563255157885,0.0 +local,b600k.cps0.acs100.s0,cps_native,program_receipt,state,53.0,0.33298859358130306,0.23425529103986403,0.1967370508202819,0.41694201914964335,0.0 +local,b600k.cps0.acs100.s0,cps_native,tax_items,cd,1772.0,0.21918527936460727,0.18805946140674856,0.1315498962086747,0.4564202412457159,0.0 +local,b600k.cps0.acs100.s0,cps_native,tax_items,national,25.0,0.4035273114334511,0.1784162233446712,0.19152303694300477,0.568777835989975,2.0 +local,b600k.cps0.acs100.s0,cps_native,tax_items,state,344.0,0.14896247912328456,0.08996604129473856,0.04756257000466263,0.3937488024423211,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.010136052807003488,0.01013605280700349,0.010136052807003488,0.005855754513866495,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.1754019130902057,0.17097228299730252,0.17284238883173988,0.06947274184770484,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.2571939974229721,0.16786041860974282,0.13784197423799247,0.41986626229398866,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.2972360408199539,0.15742063970979453,0.1408678380143705,0.47827405708240406,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.2107342152095433,0.13327103334700324,0.09085307203148775,0.33394671439249957,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.017211972245429037,0.017211972245429037,0.017211972245429037,0.19867559908952573,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.2211641216415796,0.20860973706809605,0.15552544716349676,0.2921397722262989,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.1978848454201713,0.18733821507391474,0.10753758450485816,0.44202465347024683,0.0 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.2628100366380806,0.22040053212384983,0.2234367974470472,0.5291498415503615,2.0 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.09722359194488586,0.08439381284361257,0.03370907820407727,0.33883781338522856,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,acs_native,demographics_pep,national,1.0,0.01576951353020201,0.01576951353020201,0.01576951353020201,0.0012585729803580871,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,acs_native,demographics_pep,state,82.0,0.1755881318984247,0.17581802932489968,0.16750174206586338,0.05710392080844605,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,cd,875.0,0.2605500603745919,0.1678557603928045,0.1410735191274657,0.37813873708454127,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,national,8.0,0.28303180656962545,0.14932016849380422,0.1543819149158538,0.4122176240869324,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,state,308.0,0.22566038406336075,0.139258458394681,0.09270839809204634,0.2927888377838527,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,program_receipt,national,1.0,0.010099248158177773,0.010099248158177773,0.010099248158177773,0.11978351092319243,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,program_receipt,state,53.0,0.24308717902612242,0.20974084490891096,0.16376174254163717,0.2524800600533962,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,cd,1772.0,0.19540517208401864,0.17632939836579645,0.10482353468334439,0.391052299703642,0.0 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,national,25.0,0.31046264411253377,0.2032082588388321,0.2707829178423111,0.4465053286990593,2.0 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,state,344.0,0.0955685004257194,0.07291977927521158,0.03224911512670321,0.3202360737572371,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.01812033353474878,0.01812033353474878,0.01812033353474878,0.01202909718874619,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.16790058348725412,0.17241204900123233,0.15947315095731923,0.04729583748363907,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.2624714665203537,0.17887519054989248,0.1391005016343977,0.36863302207335036,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.27182257303377866,0.16056439573971076,0.06732699988992723,0.4002778498616709,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.22801475595028387,0.14553268529226174,0.0993417467984917,0.3155160837380963,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.018400053924893685,0.018400053924893685,0.018400053924893685,0.03755053468001515,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.2668946359653863,0.21412481126440827,0.17092438773462693,0.32436295801900805,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.19925786008259666,0.17897751647269855,0.11116312522810423,0.4083622758880901,0.0 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.4012610486873406,0.19738171921124925,0.2699159833688457,0.5091458550213717,2.0 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.10891701658994467,0.07414403524802768,0.03508515274486393,0.34875785598845305,0.0 +local,b600k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.009748047331019298,0.009748047331019298,0.009748047331019298,0.008377589413286996,0.0 +local,b600k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.17274112771628555,0.1672249621829913,0.15891778181098037,0.07560887119978771,0.0 +local,b600k.cps2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.26006802013216795,0.16643060798107703,0.13001807493222556,0.42216405346009805,0.0 +local,b600k.cps2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.32120354337761525,0.16894717433895856,0.1746834663179897,0.5269651800078177,0.0 +local,b600k.cps2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.2272622999137468,0.13660636213057004,0.09570523473636715,0.35473719912541135,0.0 +local,b600k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.015818129127183264,0.015818129127183264,0.015818129127183264,0.22306731161624946,0.0 +local,b600k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.23832240721713333,0.2127341556968829,0.15942677627754728,0.2965881008062998,0.0 +local,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.19193938886986367,0.17836312217435765,0.1092895596448493,0.4494370885359321,0.0 +local,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.2741464393736104,0.2248587132291703,0.2052729488134771,0.5506343068650499,2.0 +local,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.09638255758435196,0.08091113165432517,0.03777885084442021,0.3518826507591656,0.0 +local,b600k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.02475917629860216,0.02475917629860216,0.02475917629860216,0.017573021743116243,0.0 +local,b600k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.1727926702637479,0.1769222740273971,0.16539901544609548,0.04829167767667345,0.0 +local,b600k.cps2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.26024206825732665,0.17496164665252514,0.13399796675168094,0.3717379195237837,0.0 +local,b600k.cps2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.2828210135610313,0.17260429439216765,0.0908722611674771,0.41992140249388926,0.0 +local,b600k.cps2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2236640895251088,0.14518749082449367,0.09582152382227804,0.3324917408628722,0.0 +local,b600k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.02135616415198129,0.02135616415198129,0.02135616415198129,0.019745273778811603,0.0 +local,b600k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.26545572634449927,0.1830663970616625,0.15345655165356942,0.3559462297475651,0.0 +local,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.20066761534376518,0.1785994945907298,0.11188863453159945,0.42451280238245664,0.0 +local,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.40659358663656436,0.19756251012039058,0.2651197711910628,0.5272503608314645,2.0 +local,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.12214147564951856,0.07956270178587659,0.03697552534400701,0.3624905630571128,0.0 +local,b600k.cps2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.015799493172281204,0.015799493172281204,0.015799493172281204,0.020249560721809355,0.0 +local,b600k.cps2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.16296383138786746,0.15185482529888564,0.15110273912484168,0.09501372306127694,0.0 +local,b600k.cps2024.acs000.s0,cps_native,income_components,cd,875.0,0.2656953207189058,0.1681442019089685,0.138928469444596,0.441024021680528,0.0 +local,b600k.cps2024.acs000.s0,cps_native,income_components,national,8.0,0.33846945404864565,0.18416475329229903,0.1785682800281546,0.5231357614061164,0.0 +local,b600k.cps2024.acs000.s0,cps_native,income_components,state,308.0,0.24938146856875043,0.14036162915564376,0.097186802477627,0.3691542979336072,0.0 +local,b600k.cps2024.acs000.s0,cps_native,program_receipt,national,1.0,0.013547045107091024,0.013547045107091024,0.013547045107091024,0.2479543876474267,0.0 +local,b600k.cps2024.acs000.s0,cps_native,program_receipt,state,53.0,0.22907564730531138,0.2078191281469131,0.18887255600011207,0.3147145965159256,0.0 +local,b600k.cps2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.20023622828585266,0.18349399747027104,0.11804269201798637,0.4530807151236348,0.0 +local,b600k.cps2024.acs000.s0,cps_native,tax_items,national,25.0,0.2891188920908548,0.22029568422594706,0.22804330640686277,0.5600452269263323,2.0 +local,b600k.cps2024.acs000.s0,cps_native,tax_items,state,344.0,0.10892226992996659,0.08764562355839259,0.046396086288767444,0.360598360750115,0.0 +local,b600k.cps2024.acs050.s0,acs_native,demographics_pep,national,1.0,0.024562069452818306,0.024562069452818306,0.024562069452818306,0.01827307365553338,0.0 +local,b600k.cps2024.acs050.s0,acs_native,demographics_pep,state,82.0,0.16830562304601007,0.16660914072438168,0.16047811824279828,0.06559884496603631,0.0 +local,b600k.cps2024.acs050.s0,cps_native,income_components,cd,875.0,0.26250895012461006,0.1703625468985965,0.1487048873045379,0.3822359539086939,0.0 +local,b600k.cps2024.acs050.s0,cps_native,income_components,national,8.0,0.3213737792597196,0.17019663126618276,0.21568880056112785,0.44130526123776725,0.0 +local,b600k.cps2024.acs050.s0,cps_native,income_components,state,308.0,0.23432921919635685,0.14024705468374582,0.09994917973679213,0.3055149753808625,0.0 +local,b600k.cps2024.acs050.s0,cps_native,program_receipt,national,1.0,0.00817443343464656,0.00817443343464656,0.00817443343464656,0.12482485043996469,0.0 +local,b600k.cps2024.acs050.s0,cps_native,program_receipt,state,53.0,0.24338243766687526,0.20824319556620854,0.1612262117081174,0.27861804676738294,0.0 +local,b600k.cps2024.acs050.s0,cps_native,tax_items,cd,1772.0,0.1959079928120096,0.17776178952291224,0.10926007930254977,0.39488986618796484,0.0 +local,b600k.cps2024.acs050.s0,cps_native,tax_items,national,25.0,0.3751608181579381,0.20910805078840614,0.25902182293613474,0.4694411267282574,2.0 +local,b600k.cps2024.acs050.s0,cps_native,tax_items,state,344.0,0.10285916534181022,0.07495770332349953,0.03291397899113718,0.33484771135713354,0.0 +local,b600k.cps2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.03450166581507053,0.03450166581507053,0.03450166581507053,0.02061082779871088,0.0 +local,b600k.cps2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.17796828282928034,0.17868661627764007,0.1666431160762968,0.04604926986037894,0.0 +local,b600k.cps2024.acs100.s0,cps_native,income_components,cd,875.0,0.26290664169365136,0.17802917648231859,0.1284239903960179,0.3782766470832022,0.0 +local,b600k.cps2024.acs100.s0,cps_native,income_components,national,8.0,0.29105670089519964,0.19093547501286254,0.10892520453084326,0.4365792336967421,0.0 +local,b600k.cps2024.acs100.s0,cps_native,income_components,state,308.0,0.2156128538018088,0.14570214545401558,0.09471632281715872,0.3552904992784904,0.0 +local,b600k.cps2024.acs100.s0,cps_native,program_receipt,national,1.0,0.030520846389040714,0.030520846389040714,0.030520846389040714,0.0026097729691897283,0.0 +local,b600k.cps2024.acs100.s0,cps_native,program_receipt,state,53.0,0.2972810264774454,0.19179084049858708,0.19696236565754566,0.38621612005541917,0.0 +local,b600k.cps2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.20627381142528392,0.18072813840392735,0.11930476798189896,0.4392292514945763,0.0 +local,b600k.cps2024.acs100.s0,cps_native,tax_items,national,25.0,0.4054127093356362,0.1890321985474141,0.23591734409863896,0.5503683262353999,2.0 +local,b600k.cps2024.acs100.s0,cps_native,tax_items,state,344.0,0.13087171934248212,0.08279804078354862,0.03960551339958829,0.37916761465200605,0.0 +local,natural.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.006034169476003112,0.006034169476003111,0.006034169476003112,0.005855754513861371,0.0 +local,natural.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.15388166362805228,0.15151532879676796,0.1542438829417557,0.06947274184770472,0.0 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.2924916286167124,0.18902157991980115,0.18142000219050555,0.4319959708655007,0.0 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.31781093393731763,0.17679584419707894,0.16115838024972626,0.47827405708240245,0.0 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2171361498676638,0.1385559365933577,0.09765665655835087,0.3339467143924995,0.0 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.022028801366789155,0.022028801366789155,0.022028801366789155,0.1986755990895027,0.0 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.21970607656454014,0.20631677202314333,0.16406961022304065,0.29213977222629917,0.0 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.24047344890255934,0.22476742671377997,0.14402871091749278,0.4574705945515955,0.0 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.25741786972269515,0.22338487089464773,0.22663697479223494,0.529149841550363,2.0 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.10119344800103712,0.08444250474053568,0.04265557837220431,0.338837813385229,0.0 +local,natural.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.00867427263331132,0.00867427263331132,0.00867427263331132,0.00837758941327675,0.0 +local,natural.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.1446528096601262,0.14209629210284702,0.11649096007105197,0.07560887119978744,0.0 +local,natural.cps2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.3150915957351537,0.2003078781493754,0.2026689324629485,0.44213716093608957,0.0 +local,natural.cps2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.3789362170207237,0.21094597691649694,0.2512488375021034,0.5269651800078063,0.0 +local,natural.cps2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.23536006970086076,0.14289610902487176,0.09578473702098222,0.3547371991254109,0.0 +local,natural.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.02751921605655528,0.02751921605655528,0.02751921605655528,0.2230673116162417,0.0 +local,natural.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.24257472693888676,0.21140923808697323,0.15689030111622126,0.2965881008062997,0.0 +local,natural.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.26165240206543205,0.23879973089927597,0.16756684016615322,0.47029161827566085,0.0 +local,natural.cps2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.2847185986986231,0.23011969579176297,0.2465324383471578,0.5506343068650511,2.0 +local,natural.cps2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.11172690325900311,0.09479335450882666,0.04806387783989986,0.35188265075916575,0.0 +local,natural.cps2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.024214130186158107,0.024214130186158107,0.024214130186158107,0.02024956072162986,0.0 +local,natural.cps2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.1313869905183457,0.12078613251635743,0.1014041588164672,0.09501372306127617,0.0 +local,natural.cps2024.acs100.s0,cps_native,income_components,cd,875.0,0.36862878530678705,0.24161550365708728,0.2652470938026437,0.48482091490569446,3.0 +local,natural.cps2024.acs100.s0,cps_native,income_components,national,8.0,0.41993101833940544,0.23976728749224158,0.2870468268937866,0.5231357614058866,0.0 +local,natural.cps2024.acs100.s0,cps_native,income_components,state,308.0,0.25624029425085854,0.15689944501106054,0.12749989368463716,0.36915429793360777,0.0 +local,natural.cps2024.acs100.s0,cps_native,program_receipt,national,1.0,0.03505467954811919,0.03505467954811919,0.03505467954811919,0.2479543876474519,0.0 +local,natural.cps2024.acs100.s0,cps_native,program_receipt,state,53.0,0.24908093565333903,0.22716678599826645,0.17906538520674173,0.31471459651592565,0.0 +local,natural.cps2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.32782135195928086,0.29161912022288083,0.2302351268716587,0.48638909934111646,17.0 +local,natural.cps2024.acs100.s0,cps_native,tax_items,national,25.0,0.34871528225148696,0.2503362091807823,0.31036430276101573,0.5600452269263316,2.0 +local,natural.cps2024.acs100.s0,cps_native,tax_items,state,344.0,0.1409739736411195,0.11305577851354041,0.06865011481977656,0.3605983607501162,0.0 +national,b1200k.cps0.acs100.s0,acs_native,demographics_pep,national,1.0,0.02195769910410152,0.02195769910410152,0.02195769910410152,0.01687877206984775,0.0 +national,b1200k.cps0.acs100.s0,acs_native,demographics_pep,state,82.0,0.18441106064342377,0.17701257951928287,0.15417522655484414,0.04257015050767078,0.0 +national,b1200k.cps0.acs100.s0,cps_native,income_components,cd,875.0,0.30764609969672274,0.20680953405266084,0.20973350809819738,0.38454838185340123,0.0 +national,b1200k.cps0.acs100.s0,cps_native,income_components,national,8.0,0.26888281404126946,0.1598243500246062,0.1427530444211232,0.4635469598128417,0.0 +national,b1200k.cps0.acs100.s0,cps_native,income_components,state,308.0,0.23197237474725407,0.15186950129638147,0.1121665458215783,0.36978813930519205,0.0 +national,b1200k.cps0.acs100.s0,cps_native,program_receipt,national,1.0,0.025553945100445036,0.025553945100445032,0.025553945100445036,0.03224964237470852,0.0 +national,b1200k.cps0.acs100.s0,cps_native,program_receipt,state,53.0,0.29968045663035897,0.2110881988442031,0.15462591238432416,0.41642954124675036,0.0 +national,b1200k.cps0.acs100.s0,cps_native,tax_items,cd,1772.0,0.29586659384860997,0.2673724250790164,0.20068547505336365,0.453593489770896,0.0 +national,b1200k.cps0.acs100.s0,cps_native,tax_items,national,25.0,0.2766156909838321,0.13485786242780756,0.18911625709033775,0.5735022997088989,2.0 +national,b1200k.cps0.acs100.s0,cps_native,tax_items,state,344.0,0.13521094558855334,0.08864526492144273,0.04799737244969336,0.3975102748162476,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.0052202385313126366,0.0052202385313126366,0.0052202385313126366,0.0058557545138544186,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.16777266351564057,0.1491664455046359,0.12759582195164743,0.06947274184770601,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.3235953533512478,0.2552480045431331,0.20625995173024445,0.41459837672361416,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.32928572884478957,0.16213302094236687,0.21350680122480092,0.4782740570823931,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.2513346707648975,0.14734672126303786,0.10667443170272656,0.3339467143924983,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.02302489934911462,0.02302489934911462,0.02302489934911462,0.19867559908946433,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.20790520556155945,0.19497618983198423,0.13603741639226552,0.2921397722263,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.35154523730343396,0.33886968805693923,0.260045888081906,0.4399785423311982,0.0 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.21372600639712971,0.136100042925061,0.13993516652067975,0.5291498415503633,2.0 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.103106292409962,0.0829587852409976,0.04686864134744145,0.33883781338522934,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.013270541157751716,0.013270541157751716,0.013270541157751716,0.015382628295531922,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.16572583257448276,0.15814483333313564,0.13662773418562119,0.043461430521572225,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.3000866963596899,0.20858227328040593,0.19297607537048006,0.36967706910712117,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.2840843723274111,0.16644389179349514,0.1952803098085948,0.42701180053363924,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2170112714257001,0.14318764915187304,0.10676106845198147,0.336453446112695,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.019110770474478306,0.019110770474478306,0.019110770474478306,0.001560893746850735,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.2394954743578383,0.16150871996897703,0.12342843085119606,0.37195145805988555,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.3009724729875966,0.2708344058819345,0.21052641263541033,0.4239846039175,0.0 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.26322038600335806,0.12843901850830952,0.14234436549089366,0.5560157530602818,2.0 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.11848225108641687,0.08034054794921686,0.04245869245122949,0.37028807025632865,0.0 +national,b1200k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.002121032115383257,0.002121032115383257,0.002121032115383257,0.008377589413013453,0.0 +national,b1200k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.17010912963852007,0.1568844965738513,0.13906346411328419,0.07560887119978749,0.0 +national,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.32792238604490337,0.25227291873010155,0.22110067390113006,0.4205706570917942,0.0 +national,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.32209637831406707,0.16591520895346865,0.22831189840788535,0.5269651800077799,0.0 +national,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.23993486065598704,0.14090650678043606,0.09460200472119297,0.3547371991254122,0.0 +national,b1200k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.02213059947226088,0.02213059947226088,0.02213059947226088,0.2230673116161331,0.0 +national,b1200k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.21081576411829467,0.19681368918336908,0.15616225428444272,0.2965881008063,0.0 +national,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.35415598544893173,0.3422106576187931,0.264928013122722,0.4499901440346591,0.0 +national,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.23769104868187083,0.1406099003757429,0.16287315166111127,0.5506343068650498,2.0 +national,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.10524622022884024,0.08156912079062434,0.05110235143511759,0.3518826507591661,0.0 +national,b1200k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.016589596111195922,0.016589596111195922,0.016589596111195922,0.01729985070538173,0.0 +national,b1200k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.16789323516569246,0.16171657478777973,0.14911946939589438,0.04395537463408709,0.0 +national,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.297947321629199,0.2040923819918474,0.1842422401659847,0.37408290308677483,0.0 +national,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.28368890691292276,0.16861916535174784,0.1888494109953362,0.43633847203582976,0.0 +national,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2191053545869676,0.1445982694236426,0.11092020538326933,0.34723657081554843,0.0 +national,b1200k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.021106496711300833,0.021106496711300833,0.021106496711300833,0.007300241349242352,0.0 +national,b1200k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.254270666452558,0.17508602260523168,0.12600029277283378,0.3867277099908303,0.0 +national,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.2990649297438268,0.26858856946725257,0.20306560397741247,0.4350560038999481,0.0 +national,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.26146942965985237,0.12795231442457702,0.15615650260933653,0.5612460474999122,2.0 +national,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.12140193109356652,0.08213411703801168,0.046699492390995884,0.3809892888582213,0.0 +national,b1200k.cps2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.0020245750337736686,0.0020245750337736686,0.0020245750337736686,0.020249560721814663,0.0 +national,b1200k.cps2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.16804774526293845,0.14967961656088577,0.14161397876311532,0.09501372306127602,0.0 +national,b1200k.cps2024.acs000.s0,cps_native,income_components,cd,875.0,0.3231392586379741,0.24950977323608778,0.2131851589562741,0.43813763234144554,0.0 +national,b1200k.cps2024.acs000.s0,cps_native,income_components,national,8.0,0.31653521719443933,0.16436086377008868,0.194403450196737,0.5231357614058957,0.0 +national,b1200k.cps2024.acs000.s0,cps_native,income_components,state,308.0,0.2726246403105957,0.15041952839327885,0.1291820920054254,0.3691542979336075,0.0 +national,b1200k.cps2024.acs000.s0,cps_native,program_receipt,national,1.0,0.02435512321864415,0.02435512321864415,0.02435512321864415,0.24795438764739083,0.0 +national,b1200k.cps2024.acs000.s0,cps_native,program_receipt,state,53.0,0.21153125590840235,0.19826078894055923,0.13409701685091235,0.3147145965159252,0.0 +national,b1200k.cps2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.35441443098450887,0.34054446095088137,0.2633605857489142,0.4533561705186073,0.0 +national,b1200k.cps2024.acs000.s0,cps_native,tax_items,national,25.0,0.22887537782601014,0.12521490774553623,0.10081048908962394,0.5600452269263307,2.0 +national,b1200k.cps2024.acs000.s0,cps_native,tax_items,state,344.0,0.11162758094435697,0.0832968237988085,0.04748246828062481,0.36059836075011376,0.0 +national,b1200k.cps2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.020041541877410026,0.020041541877410026,0.020041541877410026,0.0175968395202377,0.0 +national,b1200k.cps2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.17531622479503287,0.16832163730648958,0.13664690313673028,0.04383220009093377,0.0 +national,b1200k.cps2024.acs100.s0,cps_native,income_components,cd,875.0,0.3030748191908012,0.20404242454281368,0.1936274773574593,0.3786111122144415,0.0 +national,b1200k.cps2024.acs100.s0,cps_native,income_components,national,8.0,0.27847798729209045,0.16679489030919548,0.16950120470258218,0.4444228133539717,0.0 +national,b1200k.cps2024.acs100.s0,cps_native,income_components,state,308.0,0.22843448064670446,0.14898699052101208,0.11987452537696658,0.3580112185950272,0.0 +national,b1200k.cps2024.acs100.s0,cps_native,program_receipt,national,1.0,0.02239293640499914,0.022392936404999144,0.02239293640499914,0.018931121048764134,0.0 +national,b1200k.cps2024.acs100.s0,cps_native,program_receipt,state,53.0,0.2664434330768029,0.18967001526720484,0.1270632367955305,0.4017073225890307,0.0 +national,b1200k.cps2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.29624925172990046,0.2654751329609256,0.1966429491233997,0.44347825448303935,0.0 +national,b1200k.cps2024.acs100.s0,cps_native,tax_items,national,25.0,0.2608897204921548,0.1319504705536772,0.17232911187198124,0.5678938650396395,2.0 +national,b1200k.cps2024.acs100.s0,cps_native,tax_items,state,344.0,0.12662306516466945,0.08438057222767512,0.04793099226377642,0.3884940390560251,0.0 +national,b300k.cps0.acs100.s0,acs_native,demographics_pep,national,1.0,0.016870192068919425,0.016870192068919425,0.016870192068919425,0.013400519618049613,0.0 +national,b300k.cps0.acs100.s0,acs_native,demographics_pep,state,82.0,0.17631137645123166,0.17361551540158124,0.13039259058518654,0.06782021622343067,0.0 +national,b300k.cps0.acs100.s0,cps_native,income_components,cd,875.0,0.35128318424714394,0.2554393034191434,0.26208632680440735,0.40117938753532867,0.0 +national,b300k.cps0.acs100.s0,cps_native,income_components,national,8.0,0.2717134961732203,0.15880972938504043,0.1575659684815367,0.4633596709819412,0.0 +national,b300k.cps0.acs100.s0,cps_native,income_components,state,308.0,0.26125044364790023,0.16437093978603573,0.13697628101484355,0.39529156481402894,0.0 +national,b300k.cps0.acs100.s0,cps_native,program_receipt,national,1.0,0.02724119086542924,0.02724119086542924,0.02724119086542924,0.026716643217532504,0.0 +national,b300k.cps0.acs100.s0,cps_native,program_receipt,state,53.0,0.3032951550346929,0.21098458680375742,0.2048503198795799,0.4086828465688528,0.0 +national,b300k.cps0.acs100.s0,cps_native,tax_items,cd,1772.0,0.3582662830085487,0.31419178200921266,0.2725611839523062,0.46464998602081803,0.0 +national,b300k.cps0.acs100.s0,cps_native,tax_items,national,25.0,0.2537067303546097,0.1318177358017933,0.18652508022387293,0.5557314764840549,2.0 +national,b300k.cps0.acs100.s0,cps_native,tax_items,state,344.0,0.1506784259545128,0.09202452889927706,0.04997295728784494,0.39805565541393706,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.005167825391038847,0.005167825391038847,0.005167825391038847,0.005855754513860456,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.16883232591661934,0.14915585298054376,0.12488890388665849,0.06947274184770443,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.36163690746942406,0.2799460412049051,0.2502947481740828,0.4291358398041085,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.32977515490559406,0.16261928028894954,0.21339110427713515,0.47827405708239845,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.2501692829635922,0.1468407612279022,0.10497712386667596,0.33394671439249957,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.02359433133322223,0.02359433133322223,0.02359433133322223,0.198675599089492,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.20768612837662662,0.19479633803415647,0.1393190925540098,0.29213977222629944,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.3931206653033833,0.37240182675230715,0.3170275085957328,0.4498356278356252,0.0 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.21404667349386203,0.13667272619816687,0.13687253763110924,0.5291498415503632,2.0 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.10326926102077237,0.08317392259443335,0.04605459108975407,0.3388378133852289,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.008725727505773193,0.008725727505773193,0.008725727505773193,0.0009409716770597445,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.1694656640096662,0.14915796537905357,0.12995660467522813,0.06665159124470905,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.343391408289106,0.24776513814708398,0.23743816195996031,0.378976016399089,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.29035388085687736,0.14699621222025963,0.1643323899532224,0.4001792562668704,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2175345096397957,0.13898606978423844,0.08695306286827685,0.2968930490348722,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.015996373905224303,0.015996373905224303,0.015996373905224303,0.10285384071979277,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.18389306059868185,0.18631884326534107,0.12838016767245725,0.25653143587437,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.3557118942484612,0.3201692896714062,0.2794066942743947,0.39903498652118985,0.0 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.1676711991493631,0.11481387847275913,0.06985386074099965,0.44243279455805634,2.0 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.11122761415655996,0.08070525044167341,0.04515957653701194,0.32506149143830915,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,acs_native,demographics_pep,national,1.0,0.007864647386341813,0.007864647386341813,0.007864647386341813,0.00574457946282472,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,acs_native,demographics_pep,state,82.0,0.15892294151193456,0.14581627390325258,0.13322466274447062,0.06664303458801327,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,cd,875.0,0.34018024084652343,0.2456263272805082,0.2272616344277275,0.3795625454008541,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,national,8.0,0.2962365744601121,0.15270991521899596,0.1693785423176027,0.40663073072873945,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,state,308.0,0.2305607520155476,0.1420695733166254,0.08811629086202039,0.29021012659647627,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,program_receipt,national,1.0,0.016840998167351837,0.016840998167351837,0.016840998167351837,0.10131908878358668,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,program_receipt,state,53.0,0.19885977768618832,0.19192929933829064,0.13805964324203834,0.294780676004153,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,cd,1772.0,0.36409657696436076,0.32961540397346506,0.27908178020001767,0.4012667459792321,0.0 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,national,25.0,0.2828133739485453,0.12318720555769071,0.13744965922385063,0.47103181994044085,2.0 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,state,344.0,0.11444292204091333,0.07813033674697079,0.044487395970071786,0.32856345310502155,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,acs_native,demographics_pep,national,1.0,0.013112172113125837,0.013112172113125837,0.013112172113125837,0.007908708579123801,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,acs_native,demographics_pep,state,82.0,0.16150427764582204,0.14293748694961242,0.12541260308537644,0.06573246253483321,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,cd,875.0,0.35363214799932335,0.24977005130623395,0.2346124689589099,0.3887871720801931,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,national,8.0,0.2864134513967582,0.14785890310172922,0.16642636562580612,0.39910792254316074,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,state,308.0,0.22415015708249011,0.13768313502706536,0.09591729027382125,0.3099745978695418,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,program_receipt,national,1.0,0.014709726614093675,0.014709726614093675,0.014709726614093675,0.10150007749422552,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,program_receipt,state,53.0,0.21213674854359396,0.19641827597744208,0.1281674524669468,0.25740969061476937,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,cd,1772.0,0.35513195329635117,0.32139872473546593,0.27161593003589574,0.39822220731769076,0.0 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,national,25.0,0.14029193104915635,0.11346430625428228,0.06988307035891135,0.4299717016824443,2.0 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,state,344.0,0.11422761523151209,0.08039068244758937,0.047376815581054665,0.3286387635044876,0.0 +national,b300k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.0017346938889252002,0.0017346938889252002,0.0017346938889252002,0.008377589413330727,0.0 +national,b300k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.1703353292068738,0.15605154066010846,0.1444893565237877,0.07560887119978785,0.0 +national,b300k.cps2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.3541385957210492,0.27771727146700187,0.240317419172691,0.4324701136016301,0.0 +national,b300k.cps2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.32105701301425404,0.16567906228068985,0.22473692916089136,0.5269651800078506,0.0 +national,b300k.cps2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.241244989898294,0.1414807308325787,0.0949712593908498,0.3547371991254107,0.0 +national,b300k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.02305290586260365,0.02305290586260365,0.02305290586260365,0.2230673116162228,0.0 +national,b300k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.2117635469327823,0.197357300272905,0.1558686020947598,0.2965881008063,0.0 +national,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.3912707474902042,0.3713504826183878,0.30905321384082296,0.45433502110786905,0.0 +national,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.23789205574760075,0.14066163171150312,0.16647423060888997,0.5506343068650513,2.0 +national,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.10525161471376977,0.08169006921487083,0.049763920807426046,0.3518826507591654,0.0 +national,b300k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.010464550350701743,0.010464550350701743,0.010464550350701743,0.009055290556208049,0.0 +national,b300k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.17130848948985306,0.15629070637523135,0.15939005574140064,0.07085969497722987,0.0 +national,b300k.cps2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.34100599629947437,0.24141655133099743,0.24331461670790575,0.3669339140684229,0.0 +national,b300k.cps2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.29728213984230956,0.15909728897700975,0.20729177626055137,0.40289655211130726,0.0 +national,b300k.cps2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.23613502945233353,0.14761911470910194,0.11440122922922344,0.30710137281183186,0.0 +national,b300k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.0168842267865189,0.0168842267865189,0.0168842267865189,0.07092573571910388,0.0 +national,b300k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.21720632272633078,0.1997918455869396,0.13639086770626824,0.3076903162520198,0.0 +national,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.36061429401905143,0.32365848886963783,0.28229379299267365,0.4116350637089717,0.0 +national,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.19660979529314532,0.11504822097956896,0.1026093834827312,0.4877861936814006,2.0 +national,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.12372753888842442,0.08250326201888397,0.04667570720359082,0.34907125215334495,0.0 +national,b300k.cps2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.0022592479979299533,0.0022592479979299533,0.0022592479979299533,0.020249560721687862,0.0 +national,b300k.cps2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.16759991019765672,0.14850703836387832,0.13610953270106663,0.09501372306127615,0.0 +national,b300k.cps2024.acs000.s0,cps_native,income_components,cd,875.0,0.34940251136195666,0.2693167576943206,0.24081951241792707,0.4457556923077236,0.0 +national,b300k.cps2024.acs000.s0,cps_native,income_components,national,8.0,0.31638972165054957,0.16553993773158815,0.19874837362564574,0.523135761405959,0.0 +national,b300k.cps2024.acs000.s0,cps_native,income_components,state,308.0,0.2717766467137627,0.15026096294393193,0.13247042642699175,0.3691542979336072,0.0 +national,b300k.cps2024.acs000.s0,cps_native,program_receipt,national,1.0,0.024836190989934195,0.024836190989934195,0.024836190989934195,0.24795438764745617,0.0 +national,b300k.cps2024.acs000.s0,cps_native,program_receipt,state,53.0,0.21478031358230742,0.19947942128890242,0.14573820146243688,0.31471459651592637,0.0 +national,b300k.cps2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.38372503718890044,0.3625067226854072,0.2967808644264274,0.4534903925546885,0.0 +national,b300k.cps2024.acs000.s0,cps_native,tax_items,national,25.0,0.22881269092246512,0.12522645134013252,0.10111754547845067,0.5600452269263321,2.0 +national,b300k.cps2024.acs000.s0,cps_native,tax_items,state,344.0,0.11192711452186348,0.08372983626556475,0.04860815863394203,0.36059836075011625,0.0 +national,b300k.cps2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.00931796336678804,0.00931796336678804,0.00931796336678804,0.014852052704921279,0.0 +national,b300k.cps2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.15972336025799524,0.15335965330502707,0.1332619340175774,0.06445479312430935,0.0 +national,b300k.cps2024.acs100.s0,cps_native,income_components,cd,875.0,0.35265118489144476,0.25790169471387586,0.24623965724078373,0.37947904444129243,0.0 +national,b300k.cps2024.acs100.s0,cps_native,income_components,national,8.0,0.3012468453260867,0.17298665303963331,0.24256121661517926,0.42741683668729064,0.0 +national,b300k.cps2024.acs100.s0,cps_native,income_components,state,308.0,0.24882813480419388,0.15606822407742243,0.12918347644957567,0.33824210059819737,0.0 +national,b300k.cps2024.acs100.s0,cps_native,program_receipt,national,1.0,0.016939819057195896,0.016939819057195896,0.016939819057195896,0.028593527974454302,0.0 +national,b300k.cps2024.acs100.s0,cps_native,program_receipt,state,53.0,0.260413002804286,0.16470684646502437,0.1337038406944402,0.34807781419533446,0.0 +national,b300k.cps2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.3674673000569755,0.3286941958992301,0.28630783484312294,0.4360689674424504,0.0 +national,b300k.cps2024.acs100.s0,cps_native,tax_items,national,25.0,0.2754496465385886,0.13414786798185854,0.184741219476327,0.5139408328554795,2.0 +national,b300k.cps2024.acs100.s0,cps_native,tax_items,state,344.0,0.13256622347613956,0.08103869692152348,0.04897012456856689,0.37378093996633127,0.0 +national,b300k.cps2024.acs100.s1,acs_native,demographics_pep,national,1.0,0.015404802601410693,0.015404802601410693,0.015404802601410693,0.024319002241314284,0.0 +national,b300k.cps2024.acs100.s1,acs_native,demographics_pep,state,82.0,0.16668764568786598,0.15680788142305943,0.13360221080787146,0.06808787942333058,0.0 +national,b300k.cps2024.acs100.s1,cps_native,income_components,cd,875.0,0.3612127672330394,0.2570444730706306,0.2541197916191934,0.3859151316270397,0.0 +national,b300k.cps2024.acs100.s1,cps_native,income_components,national,8.0,0.2977120578359827,0.17502012251655594,0.22371554293117815,0.4164986685812917,0.0 +national,b300k.cps2024.acs100.s1,cps_native,income_components,state,308.0,0.2509771048266822,0.15086831972484302,0.12963656367549917,0.3496512433174437,0.0 +national,b300k.cps2024.acs100.s1,cps_native,program_receipt,national,1.0,0.0178695300297639,0.0178695300297639,0.0178695300297639,0.019790816651314526,0.0 +national,b300k.cps2024.acs100.s1,cps_native,program_receipt,state,53.0,0.26814652916269605,0.16594843342995402,0.12158462514191483,0.3625495239345136,0.0 +national,b300k.cps2024.acs100.s1,cps_native,tax_items,cd,1772.0,0.37386621383407415,0.33616925229640326,0.28925882706595685,0.4348685230810899,0.0 +national,b300k.cps2024.acs100.s1,cps_native,tax_items,national,25.0,0.2477600920853501,0.13697162735945176,0.10280002841379127,0.5464793038665083,2.0 +national,b300k.cps2024.acs100.s1,cps_native,tax_items,state,344.0,0.12929058872743387,0.07958346341288848,0.04774611621930204,0.37359062516791974,0.0 +national,b300k.cps2024.acs100.s2,acs_native,demographics_pep,national,1.0,0.010001515838666585,0.010001515838666585,0.010001515838666585,0.023027727440425933,0.0 +national,b300k.cps2024.acs100.s2,acs_native,demographics_pep,state,82.0,0.15140609544121636,0.14622132368340934,0.12907187869169637,0.06508790792851012,0.0 +national,b300k.cps2024.acs100.s2,cps_native,income_components,cd,875.0,0.3686085945173797,0.2588705161358702,0.2579506518317372,0.3865982293362447,0.0 +national,b300k.cps2024.acs100.s2,cps_native,income_components,national,8.0,0.3008031095321073,0.18156489660155303,0.2231968823949484,0.42824365791626173,0.0 +national,b300k.cps2024.acs100.s2,cps_native,income_components,state,308.0,0.24795753418976757,0.15141192263287945,0.13782665992659682,0.340061249865294,0.0 +national,b300k.cps2024.acs100.s2,cps_native,program_receipt,national,1.0,0.019857064931926485,0.019857064931926485,0.019857064931926485,0.018498927612313632,0.0 +national,b300k.cps2024.acs100.s2,cps_native,program_receipt,state,53.0,0.19367471990644233,0.1394208117970878,0.10781305232429036,0.3764203330394173,0.0 +national,b300k.cps2024.acs100.s2,cps_native,tax_items,cd,1772.0,0.37203909943411284,0.33269959535144616,0.29190170190421183,0.43937367428801594,0.0 +national,b300k.cps2024.acs100.s2,cps_native,tax_items,national,25.0,0.2486027825799415,0.12262436494746977,0.1573026595237983,0.5628541538069328,2.0 +national,b300k.cps2024.acs100.s2,cps_native,tax_items,state,344.0,0.12704222296996676,0.08023390533648771,0.05175327811634929,0.38830933064683476,0.0 +national,b600k.cps0.acs100.s0,acs_native,demographics_pep,national,1.0,0.02011147630101239,0.020111476301012385,0.02011147630101239,0.02241502856907775,0.0 +national,b600k.cps0.acs100.s0,acs_native,demographics_pep,state,82.0,0.18272324742321505,0.17659111903303265,0.13798933260708823,0.0487503738933647,0.0 +national,b600k.cps0.acs100.s0,cps_native,income_components,cd,875.0,0.3424187684904904,0.2313626714339115,0.23699732918634808,0.38854844009047707,0.0 +national,b600k.cps0.acs100.s0,cps_native,income_components,national,8.0,0.2689951671881319,0.15913298424693192,0.14523395108551543,0.4592578508590413,0.0 +national,b600k.cps0.acs100.s0,cps_native,income_components,state,308.0,0.24966655406897992,0.15624767270942483,0.14465799026297288,0.3794891946521371,0.0 +national,b600k.cps0.acs100.s0,cps_native,program_receipt,national,1.0,0.02489297997316097,0.02489297997316097,0.02489297997316097,0.029271563255157885,0.0 +national,b600k.cps0.acs100.s0,cps_native,program_receipt,state,53.0,0.29294482806889643,0.20930031503733534,0.162036151783156,0.41694201914964335,0.0 +national,b600k.cps0.acs100.s0,cps_native,tax_items,cd,1772.0,0.32361559846110066,0.28513385765062044,0.23379542026773675,0.4564202412457159,0.0 +national,b600k.cps0.acs100.s0,cps_native,tax_items,national,25.0,0.30009399815900706,0.14236264688039546,0.19889655897982783,0.568777835989975,2.0 +national,b600k.cps0.acs100.s0,cps_native,tax_items,state,344.0,0.14197510217799877,0.08841334596283541,0.05192372872198828,0.3937488024423211,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.0053365734581045385,0.0053365734581045385,0.0053365734581045385,0.005855754513866495,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.16812914955780833,0.1490947355556649,0.12682779901721547,0.06947274184770484,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.33705595250545295,0.2659680635852056,0.22458848906465628,0.41986626229398866,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.3294899882420628,0.16225745849592083,0.21290884773639202,0.47827405708240406,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.2497558167425825,0.1465536741402803,0.10068479994791293,0.33394671439249957,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.023530777211221248,0.023530777211221248,0.023530777211221248,0.19867559908952573,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.20797277066731495,0.19475814819364867,0.138009379648619,0.2921397722262989,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.36484605420483474,0.34908314404378693,0.2752634753746337,0.44202465347024683,0.0 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.2138082503132445,0.13639714259639124,0.13720162861141832,0.5291498415503615,2.0 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.1031874802625938,0.08300171592795827,0.04651921200164309,0.33883781338522856,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,acs_native,demographics_pep,national,1.0,0.009246832451492448,0.009246832451492448,0.009246832451492448,0.0012585729803580871,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,acs_native,demographics_pep,state,82.0,0.16310377019843816,0.14481008292000752,0.12478774763305389,0.05710392080844605,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,cd,875.0,0.3188925375284967,0.22832739764849128,0.20782614752354545,0.37813873708454127,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,national,8.0,0.29512682597853446,0.14732448555611047,0.15736293401407436,0.4122176240869324,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,state,308.0,0.21346085314456834,0.1362020817903301,0.0853337784349712,0.2927888377838527,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,program_receipt,national,1.0,0.015882587687460887,0.015882587687460887,0.015882587687460887,0.11978351092319243,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,program_receipt,state,53.0,0.18740334543196172,0.18700896188598276,0.1278790279570473,0.2524800600533962,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,cd,1772.0,0.33195745787437014,0.3049992951093554,0.24664950057868296,0.391052299703642,0.0 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,national,25.0,0.18503149715216213,0.12023739967692121,0.07177294428995992,0.4465053286990593,2.0 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,state,344.0,0.1115046834722531,0.07923419525415869,0.046382094981725464,0.3202360737572371,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.008554534227795198,0.008554534227795198,0.008554534227795198,0.01202909718874619,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.15873853658076326,0.14899255514621912,0.12754090501230264,0.04729583748363907,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.3262427297847171,0.23257425739175286,0.21165577335238137,0.36863302207335036,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.2893728521205644,0.16218240689145802,0.2163602796510579,0.4002778498616709,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2210704782651005,0.1440288591118013,0.10677609012634764,0.3155160837380963,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.016956899842189187,0.016956899842189187,0.016956899842189187,0.03755053468001515,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.2248545879476049,0.2003986854435469,0.13284473025793556,0.32436295801900805,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.3264735047442763,0.2910475006507393,0.23956257004027842,0.4083622758880901,0.0 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.2385466084964923,0.1336357659198618,0.1297237020044589,0.5091458550213717,2.0 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.11602189617659167,0.0784618236438128,0.04426792577578813,0.34875785598845305,0.0 +national,b600k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.001618349308075585,0.0016183493080755848,0.001618349308075585,0.008377589413286996,0.0 +national,b600k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.17051499247871504,0.15663873209102755,0.1443176249604785,0.07560887119978771,0.0 +national,b600k.cps2023-2024.acs000.s0,cps_native,income_components,cd,875.0,0.3343856632126332,0.2597982095488954,0.22121202873526485,0.42216405346009805,0.0 +national,b600k.cps2023-2024.acs000.s0,cps_native,income_components,national,8.0,0.32161404183154935,0.1658365676761915,0.22642947064257146,0.5269651800078177,0.0 +national,b600k.cps2023-2024.acs000.s0,cps_native,income_components,state,308.0,0.24089602188398596,0.1410695704762541,0.09560219900262476,0.35473719912541135,0.0 +national,b600k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1.0,0.022775186128494364,0.022775186128494364,0.022775186128494364,0.22306731161624946,0.0 +national,b600k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53.0,0.21163516529999524,0.19728937068078964,0.1573105227337019,0.2965881008062998,0.0 +national,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.3679213205348031,0.354676713256416,0.28190671919289345,0.4494370885359321,0.0 +national,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,national,25.0,0.23766450191219107,0.14044977953346552,0.16581263459056883,0.5506343068650499,2.0 +national,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344.0,0.10524017537062978,0.08164983429685771,0.05095591823205167,0.3518826507591656,0.0 +national,b600k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.0105143654325601,0.0105143654325601,0.0105143654325601,0.017573021743116243,0.0 +national,b600k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.1594929954913748,0.15411506652288753,0.14076211296175056,0.04829167767667345,0.0 +national,b600k.cps2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.329919322491642,0.22764700531486934,0.20780418868142828,0.3717379195237837,0.0 +national,b600k.cps2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.2921733910880401,0.16894339419826018,0.2180810946185232,0.41992140249388926,0.0 +national,b600k.cps2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.22528352031241805,0.1471673922779094,0.11342659803008534,0.3324917408628722,0.0 +national,b600k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.017101683358144604,0.017101683358144604,0.017101683358144604,0.019745273778811603,0.0 +national,b600k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.24584572541285482,0.15830688091048808,0.13026563249766798,0.3559462297475651,0.0 +national,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.32541715634264756,0.2906762695751777,0.23258215774665963,0.42451280238245664,0.0 +national,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.20359916084943233,0.12629200252777717,0.1769798472323017,0.5272503608314645,2.0 +national,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.12315745579178713,0.08004394113090325,0.04578116215447012,0.3624905630571128,0.0 +national,b600k.cps2024.acs000.s0,acs_native,demographics_pep,national,1.0,0.0021358882635466037,0.0021358882635466037,0.0021358882635466037,0.020249560721809355,0.0 +national,b600k.cps2024.acs000.s0,acs_native,demographics_pep,state,82.0,0.16789701330967025,0.14898923433085667,0.13878380395612092,0.09501372306127694,0.0 +national,b600k.cps2024.acs000.s0,cps_native,income_components,cd,875.0,0.3399999174330977,0.2570692865569055,0.2335343581939193,0.441024021680528,0.0 +national,b600k.cps2024.acs000.s0,cps_native,income_components,national,8.0,0.31661731565981016,0.16505051648848001,0.19635888789814987,0.5231357614061164,0.0 +national,b600k.cps2024.acs000.s0,cps_native,income_components,state,308.0,0.27213503084058716,0.1503913943497396,0.12876895091382057,0.3691542979336072,0.0 +national,b600k.cps2024.acs000.s0,cps_native,program_receipt,national,1.0,0.024764169556657892,0.024764169556657896,0.024764169556657892,0.2479543876474267,0.0 +national,b600k.cps2024.acs000.s0,cps_native,program_receipt,state,53.0,0.2137667160204601,0.19929048540912592,0.14259421789962012,0.3147145965159256,0.0 +national,b600k.cps2024.acs000.s0,cps_native,tax_items,cd,1772.0,0.36217559115777576,0.3453555019570111,0.26791994252276674,0.4530807151236348,0.0 +national,b600k.cps2024.acs000.s0,cps_native,tax_items,national,25.0,0.22884885013439715,0.12525218557779122,0.10104472640966025,0.5600452269263323,2.0 +national,b600k.cps2024.acs000.s0,cps_native,tax_items,state,344.0,0.11175801102457908,0.08351783968772346,0.04884656958975516,0.360598360750115,0.0 +national,b600k.cps2024.acs050.s0,acs_native,demographics_pep,national,1.0,0.01059698398474791,0.01059698398474791,0.01059698398474791,0.01827307365553338,0.0 +national,b600k.cps2024.acs050.s0,acs_native,demographics_pep,state,82.0,0.16224079914628323,0.14746421568467574,0.13940323245733155,0.06559884496603631,0.0 +national,b600k.cps2024.acs050.s0,cps_native,income_components,cd,875.0,0.3195168688854576,0.22922412645408288,0.2070477195727579,0.3822359539086939,0.0 +national,b600k.cps2024.acs050.s0,cps_native,income_components,national,8.0,0.29573623227329826,0.1553162563220971,0.20059016486769504,0.44130526123776725,0.0 +national,b600k.cps2024.acs050.s0,cps_native,income_components,state,308.0,0.22744779909141397,0.13881086116480273,0.09211261317593489,0.3055149753808625,0.0 +national,b600k.cps2024.acs050.s0,cps_native,program_receipt,national,1.0,0.015210309705621816,0.015210309705621818,0.015210309705621816,0.12482485043996469,0.0 +national,b600k.cps2024.acs050.s0,cps_native,program_receipt,state,53.0,0.1980126668984462,0.1938415355251176,0.13711131037463525,0.27861804676738294,0.0 +national,b600k.cps2024.acs050.s0,cps_native,tax_items,cd,1772.0,0.33195568945586346,0.30461551780262586,0.24531407981333797,0.39488986618796484,0.0 +national,b600k.cps2024.acs050.s0,cps_native,tax_items,national,25.0,0.24425577117305886,0.12377136061752915,0.1406591288568045,0.4694411267282574,2.0 +national,b600k.cps2024.acs050.s0,cps_native,tax_items,state,344.0,0.11440855161234355,0.0777994745936193,0.04214883052620782,0.33484771135713354,0.0 +national,b600k.cps2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.016056707500882138,0.016056707500882138,0.016056707500882138,0.02061082779871088,0.0 +national,b600k.cps2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.16848626972379938,0.163313017108608,0.14294104431989962,0.04604926986037894,0.0 +national,b600k.cps2024.acs100.s0,cps_native,income_components,cd,875.0,0.3386348678000625,0.2280626997141212,0.21271817985601668,0.3782766470832022,0.0 +national,b600k.cps2024.acs100.s0,cps_native,income_components,national,8.0,0.2875549420635022,0.16974132408536957,0.19429325565356062,0.4365792336967421,0.0 +national,b600k.cps2024.acs100.s0,cps_native,income_components,state,308.0,0.23678916833887323,0.15141343721099867,0.12590867699743744,0.3552904992784904,0.0 +national,b600k.cps2024.acs100.s0,cps_native,program_receipt,national,1.0,0.0190766849307172,0.0190766849307172,0.0190766849307172,0.0026097729691897283,0.0 +national,b600k.cps2024.acs100.s0,cps_native,program_receipt,state,53.0,0.26317788342170323,0.17985644478343443,0.14740045997629883,0.38621612005541917,0.0 +national,b600k.cps2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.32380095096613976,0.2877875373709898,0.23972875793365897,0.4392292514945763,0.0 +national,b600k.cps2024.acs100.s0,cps_native,tax_items,national,25.0,0.25450410245041155,0.1296468778604477,0.16831690526164617,0.5503683262353999,2.0 +national,b600k.cps2024.acs100.s0,cps_native,tax_items,state,344.0,0.12639218991981416,0.08220911281345297,0.04949085609109548,0.37916761465200605,0.0 +national,natural.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.004905048111233447,0.004905048111233447,0.004905048111233447,0.005855754513861371,0.0 +national,natural.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.16878172366700006,0.1488908806908542,0.1265513177004392,0.06947274184770472,0.0 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.377900474158411,0.2972454020320759,0.2665820869276443,0.4319959708655007,0.0 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.32980180744872545,0.1625694785112586,0.213577254216005,0.47827405708240245,0.0 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.2497527061900134,0.14690214587081643,0.10255047236162144,0.3339467143924995,0.0 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.023465091254367004,0.023465091254367004,0.023465091254367004,0.1986755990895027,0.0 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.20806606549668058,0.19483765050567015,0.14050620662315882,0.29213977222629917,0.0 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.4196982722736993,0.395937022554551,0.33661578637068623,0.4574705945515955,0.0 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.21428404231976375,0.13681550667103382,0.13849109253305966,0.529149841550363,2.0 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.10331386245050982,0.08323737042457563,0.04686542273745172,0.338837813385229,0.0 +national,natural.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.0011024277947811899,0.0011024277947811899,0.0011024277947811899,0.00837758941327675,0.0 +national,natural.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.1702495702655267,0.1559218723944128,0.14310514220083992,0.07560887119978744,0.0 +national,natural.cps2023-2024.acs100.s0,cps_native,income_components,cd,875.0,0.4004000810655697,0.3143699331573883,0.2898009589342263,0.44213716093608957,0.0 +national,natural.cps2023-2024.acs100.s0,cps_native,income_components,national,8.0,0.3208192686712129,0.16571721705476355,0.22338663630789368,0.5269651800078063,0.0 +national,natural.cps2023-2024.acs100.s0,cps_native,income_components,state,308.0,0.24148159487930762,0.14171773932496987,0.09831584895516964,0.3547371991254109,0.0 +national,natural.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1.0,0.02307626869067111,0.02307626869067111,0.02307626869067111,0.2230673116162417,0.0 +national,natural.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53.0,0.21174810554203344,0.19750557024167464,0.15803551687685183,0.2965881008062997,0.0 +national,natural.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.441756711126377,0.42252261052127726,0.36925381963175574,0.47029161827566085,0.0 +national,natural.cps2023-2024.acs100.s0,cps_native,tax_items,national,25.0,0.23843244002837974,0.14061823030353732,0.16616945617670534,0.5506343068650511,2.0 +national,natural.cps2023-2024.acs100.s0,cps_native,tax_items,state,344.0,0.10523930002867343,0.08173051858600082,0.04986317755875155,0.35188265075916575,0.0 +national,natural.cps2024.acs100.s0,acs_native,demographics_pep,national,1.0,0.00204405073150566,0.00204405073150566,0.00204405073150566,0.02024956072162986,0.0 +national,natural.cps2024.acs100.s0,acs_native,demographics_pep,state,82.0,0.16770595218858383,0.14827120144163983,0.1323962819428121,0.09501372306127617,0.0 +national,natural.cps2024.acs100.s0,cps_native,income_components,cd,875.0,0.43919631953037513,0.3430601431828556,0.3526933611861523,0.48482091490569446,3.0 +national,natural.cps2024.acs100.s0,cps_native,income_components,national,8.0,0.31648451055614024,0.16602938840539144,0.20025439485557306,0.5231357614058866,0.0 +national,natural.cps2024.acs100.s0,cps_native,income_components,state,308.0,0.2696116341504152,0.14965885732817816,0.12754693324945288,0.36915429793360777,0.0 +national,natural.cps2024.acs100.s0,cps_native,program_receipt,national,1.0,0.025047315767374664,0.025047315767374664,0.025047315767374664,0.2479543876474519,0.0 +national,natural.cps2024.acs100.s0,cps_native,program_receipt,state,53.0,0.21615851274709622,0.20020476067918816,0.14463771325469357,0.31471459651592565,0.0 +national,natural.cps2024.acs100.s0,cps_native,tax_items,cd,1772.0,0.510954450513885,0.47270772998435034,0.47663046115555024,0.48638909934111646,17.0 +national,natural.cps2024.acs100.s0,cps_native,tax_items,national,25.0,0.22888846742721372,0.1254852737446537,0.10116359868884849,0.5600452269263316,2.0 +national,natural.cps2024.acs100.s0,cps_native,tax_items,state,344.0,0.1121591199800416,0.08389961292726278,0.04875436193175599,0.3605983607501162,0.0 diff --git a/experiments/us-support-mix-bakeoff-20260930/holdout_by_dimension_level_common_support.csv b/experiments/us-support-mix-bakeoff-20260930/holdout_by_dimension_level_common_support.csv new file mode 100644 index 0000000000..37b88def40 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/holdout_by_dimension_level_common_support.csv @@ -0,0 +1,601 @@ +product,arm,dimension_group,dimension,level,targets,capped_mean +local,b1200k.cps0.acs100.s0,acs_native,demographics_pep,national,1,0.031136159134135165 +local,b1200k.cps0.acs100.s0,acs_native,demographics_pep,state,82,0.19286922548605295 +local,b1200k.cps0.acs100.s0,cps_native,income_components,cd,872,0.24477754861727374 +local,b1200k.cps0.acs100.s0,cps_native,income_components,national,8,0.3103777197784714 +local,b1200k.cps0.acs100.s0,cps_native,income_components,state,308,0.2064762143680669 +local,b1200k.cps0.acs100.s0,cps_native,program_receipt,national,1,0.029039789069627106 +local,b1200k.cps0.acs100.s0,cps_native,program_receipt,state,53,0.31823459303351853 +local,b1200k.cps0.acs100.s0,cps_native,tax_items,cd,1755,0.19469686276696876 +local,b1200k.cps0.acs100.s0,cps_native,tax_items,national,23,0.4289901537963436 +local,b1200k.cps0.acs100.s0,cps_native,tax_items,state,344,0.1271958904838077 +local,b1200k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.010729179501353797 +local,b1200k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.18276741791355144 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,872,0.24859959987967625 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8,0.29935919235534847 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308,0.21367843862950298 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.01646739773176462 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.2177241262978927 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.18591413291732461 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,23,0.28431170971923264 +local,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344,0.09556674683309047 +local,b1200k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.021543245807295906 +local,b1200k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.1842746202541827 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,872,0.2476259108847427 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8,0.2703684882459734 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308,0.20573088273723014 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.017016064870367338 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.25620828156733094 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.19042765317446905 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,23,0.41601421125513066 +local,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344,0.11694219144644435 +local,b1200k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.01015166708407202 +local,b1200k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.18091450159282604 +local,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,cd,872,0.245874848921533 +local,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,national,8,0.3174077240393549 +local,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,state,308,0.22520642293189733 +local,b1200k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.012997101847879234 +local,b1200k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.23728528309773528 +local,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.18198689233848053 +local,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,national,23,0.2948928450123754 +local,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344,0.09461582123755304 +local,b1200k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.02586127518861045 +local,b1200k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.18693261085783902 +local,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,cd,872,0.2457977445426312 +local,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,national,8,0.2791515694179675 +local,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,state,308,0.2087877041138612 +local,b1200k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.0210527469483214 +local,b1200k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.2633482939579282 +local,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.19213396382055473 +local,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,national,23,0.42318853556219144 +local,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344,0.11928718518775158 +local,b1200k.cps2024.acs000.s0,acs_native,demographics_pep,national,1,0.0164129965833176 +local,b1200k.cps2024.acs000.s0,acs_native,demographics_pep,state,82,0.17394744597746561 +local,b1200k.cps2024.acs000.s0,cps_native,income_components,cd,872,0.2488169871595448 +local,b1200k.cps2024.acs000.s0,cps_native,income_components,national,8,0.32479169063218366 +local,b1200k.cps2024.acs000.s0,cps_native,income_components,state,308,0.2510104848956959 +local,b1200k.cps2024.acs000.s0,cps_native,program_receipt,national,1,0.011864248303568086 +local,b1200k.cps2024.acs000.s0,cps_native,program_receipt,state,53,0.23151973362356593 +local,b1200k.cps2024.acs000.s0,cps_native,tax_items,cd,1755,0.18531507230023073 +local,b1200k.cps2024.acs000.s0,cps_native,tax_items,national,23,0.309843726575051 +local,b1200k.cps2024.acs000.s0,cps_native,tax_items,state,344,0.10541087233889969 +local,b1200k.cps2024.acs100.s0,acs_native,demographics_pep,national,1,0.029765902613478327 +local,b1200k.cps2024.acs100.s0,acs_native,demographics_pep,state,82,0.18843601526452441 +local,b1200k.cps2024.acs100.s0,cps_native,income_components,cd,872,0.2447853277386574 +local,b1200k.cps2024.acs100.s0,cps_native,income_components,national,8,0.2929664677392368 +local,b1200k.cps2024.acs100.s0,cps_native,income_components,state,308,0.20351433911134775 +local,b1200k.cps2024.acs100.s0,cps_native,program_receipt,national,1,0.025078346581670272 +local,b1200k.cps2024.acs100.s0,cps_native,program_receipt,state,53,0.2780238101680827 +local,b1200k.cps2024.acs100.s0,cps_native,tax_items,cd,1755,0.1918959645099823 +local,b1200k.cps2024.acs100.s0,cps_native,tax_items,national,23,0.42421413110367284 +local,b1200k.cps2024.acs100.s0,cps_native,tax_items,state,344,0.12267272174567183 +local,b300k.cps0.acs100.s0,acs_native,demographics_pep,national,1,0.04613637508701725 +local,b300k.cps0.acs100.s0,acs_native,demographics_pep,state,82,0.16305527686288307 +local,b300k.cps0.acs100.s0,cps_native,income_components,cd,872,0.29469571772799674 +local,b300k.cps0.acs100.s0,cps_native,income_components,national,8,0.3168667839683797 +local,b300k.cps0.acs100.s0,cps_native,income_components,state,308,0.23429272769351714 +local,b300k.cps0.acs100.s0,cps_native,program_receipt,national,1,0.045639139865172755 +local,b300k.cps0.acs100.s0,cps_native,program_receipt,state,53,0.37258429822471645 +local,b300k.cps0.acs100.s0,cps_native,tax_items,cd,1755,0.24986128922174938 +local,b300k.cps0.acs100.s0,cps_native,tax_items,national,23,0.44183142036953543 +local,b300k.cps0.acs100.s0,cps_native,tax_items,state,344,0.16692357646531517 +local,b300k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.007824599707914002 +local,b300k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.1621728690297679 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,872,0.2775552128636692 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8,0.3093507514427284 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308,0.21636417669259378 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.020499541972688495 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.22075797974313865 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.21820386066398315 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,23,0.2792804049901814 +local,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344,0.09789246569895065 +local,b300k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.013288614675196155 +local,b300k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.1638588636538814 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,872,0.2789689580638778 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8,0.285121731159793 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308,0.23627019274520367 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.015200434827783283 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.24352550167912812 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.2160400339538342 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,23,0.349239872672207 +local,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344,0.10353524278489439 +local,b300k.cps2022-2023-2024.acs100.s1,acs_native,demographics_pep,national,1,0.013142072603076335 +local,b300k.cps2022-2023-2024.acs100.s1,acs_native,demographics_pep,state,82,0.16658090945865134 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,cd,872,0.28085916873576533 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,national,8,0.28897112220822024 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,state,308,0.22564925876059017 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,program_receipt,national,1,0.01733286655302345 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,program_receipt,state,53,0.234554556947064 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,cd,1755,0.2198447626318766 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,national,23,0.3974266982719461 +local,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,state,344,0.1049204503493655 +local,b300k.cps2022-2023-2024.acs100.s2,acs_native,demographics_pep,national,1,0.01235527175196395 +local,b300k.cps2022-2023-2024.acs100.s2,acs_native,demographics_pep,state,82,0.16657533865686952 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,cd,872,0.2832995283589495 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,national,8,0.27127343247232183 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,state,308,0.22425100384819646 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,program_receipt,national,1,0.019236898516675194 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,program_receipt,state,53,0.23294838474251595 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,cd,1755,0.21901693819390178 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,national,23,0.36275468315587744 +local,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,state,344,0.10067242177324874 +local,b300k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.007680414223032498 +local,b300k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.16418836448595092 +local,b300k.cps2023-2024.acs000.s0,cps_native,income_components,cd,872,0.2787230773974767 +local,b300k.cps2023-2024.acs000.s0,cps_native,income_components,national,8,0.33464102022280334 +local,b300k.cps2023-2024.acs000.s0,cps_native,income_components,state,308,0.23299819017636778 +local,b300k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.019244183153401716 +local,b300k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.24221674734488627 +local,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.2126966298727573 +local,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,national,23,0.29094794986277905 +local,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344,0.10086916449026685 +local,b300k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.015042714721128185 +local,b300k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.15692966173306047 +local,b300k.cps2023-2024.acs100.s0,cps_native,income_components,cd,872,0.28047875295997915 +local,b300k.cps2023-2024.acs100.s0,cps_native,income_components,national,8,0.3142464709277277 +local,b300k.cps2023-2024.acs100.s0,cps_native,income_components,state,308,0.2320873385842164 +local,b300k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.021498827244479626 +local,b300k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.27350756252784914 +local,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.22412881230302453 +local,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,national,23,0.38947362752698284 +local,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344,0.11975072727313722 +local,b300k.cps2024.acs000.s0,acs_native,demographics_pep,national,1,0.017286281231718603 +local,b300k.cps2024.acs000.s0,acs_native,demographics_pep,state,82,0.15011568577342907 +local,b300k.cps2024.acs000.s0,cps_native,income_components,cd,872,0.28741625426261613 +local,b300k.cps2024.acs000.s0,cps_native,income_components,national,8,0.3596852899456623 +local,b300k.cps2024.acs000.s0,cps_native,income_components,state,308,0.2557141656365252 +local,b300k.cps2024.acs000.s0,cps_native,program_receipt,national,1,0.01754355602872212 +local,b300k.cps2024.acs000.s0,cps_native,program_receipt,state,53,0.23760123984607007 +local,b300k.cps2024.acs000.s0,cps_native,tax_items,cd,1755,0.21897836855152406 +local,b300k.cps2024.acs000.s0,cps_native,tax_items,national,23,0.3194629199682206 +local,b300k.cps2024.acs000.s0,cps_native,tax_items,state,344,0.11267807862514273 +local,b300k.cps2024.acs100.s0,acs_native,demographics_pep,national,1,0.027096046886771048 +local,b300k.cps2024.acs100.s0,acs_native,demographics_pep,state,82,0.1549464681677243 +local,b300k.cps2024.acs100.s0,cps_native,income_components,cd,872,0.27769110901988303 +local,b300k.cps2024.acs100.s0,cps_native,income_components,national,8,0.3005578264792729 +local,b300k.cps2024.acs100.s0,cps_native,income_components,state,308,0.22237544973362444 +local,b300k.cps2024.acs100.s0,cps_native,program_receipt,national,1,0.03478201981941662 +local,b300k.cps2024.acs100.s0,cps_native,program_receipt,state,53,0.2925484443868418 +local,b300k.cps2024.acs100.s0,cps_native,tax_items,cd,1755,0.22494183334223952 +local,b300k.cps2024.acs100.s0,cps_native,tax_items,national,23,0.456301095805367 +local,b300k.cps2024.acs100.s0,cps_native,tax_items,state,344,0.13611389092845289 +local,b300k.cps2024.acs100.s1,acs_native,demographics_pep,national,1,0.03998576643536792 +local,b300k.cps2024.acs100.s1,acs_native,demographics_pep,state,82,0.16845330693532218 +local,b300k.cps2024.acs100.s1,cps_native,income_components,cd,872,0.28641783506463997 +local,b300k.cps2024.acs100.s1,cps_native,income_components,national,8,0.3002579269852036 +local,b300k.cps2024.acs100.s1,cps_native,income_components,state,308,0.23419690043695096 +local,b300k.cps2024.acs100.s1,cps_native,program_receipt,national,1,0.0381781493483003 +local,b300k.cps2024.acs100.s1,cps_native,program_receipt,state,53,0.30919132639747754 +local,b300k.cps2024.acs100.s1,cps_native,tax_items,cd,1755,0.22999457486647168 +local,b300k.cps2024.acs100.s1,cps_native,tax_items,national,23,0.39235975026855563 +local,b300k.cps2024.acs100.s1,cps_native,tax_items,state,344,0.14052842598636905 +local,b300k.cps2024.acs100.s2,acs_native,demographics_pep,national,1,0.03956325894209345 +local,b300k.cps2024.acs100.s2,acs_native,demographics_pep,state,82,0.15203325967658674 +local,b300k.cps2024.acs100.s2,cps_native,income_components,cd,872,0.29987690976464276 +local,b300k.cps2024.acs100.s2,cps_native,income_components,national,8,0.305674408628534 +local,b300k.cps2024.acs100.s2,cps_native,income_components,state,308,0.22412856083303512 +local,b300k.cps2024.acs100.s2,cps_native,program_receipt,national,1,0.038609121212519214 +local,b300k.cps2024.acs100.s2,cps_native,program_receipt,state,53,0.26153923293957276 +local,b300k.cps2024.acs100.s2,cps_native,tax_items,cd,1755,0.22800506128986206 +local,b300k.cps2024.acs100.s2,cps_native,tax_items,national,23,0.436176469790223 +local,b300k.cps2024.acs100.s2,cps_native,tax_items,state,344,0.1332729999290088 +local,b600k.cps0.acs100.s0,acs_native,demographics_pep,national,1,0.039230761412120306 +local,b600k.cps0.acs100.s0,acs_native,demographics_pep,state,82,0.18202600101728358 +local,b600k.cps0.acs100.s0,cps_native,income_components,cd,872,0.27690895939462856 +local,b600k.cps0.acs100.s0,cps_native,income_components,national,8,0.3093438346324397 +local,b600k.cps0.acs100.s0,cps_native,income_components,state,308,0.2167636412860519 +local,b600k.cps0.acs100.s0,cps_native,program_receipt,national,1,0.0405888554726851 +local,b600k.cps0.acs100.s0,cps_native,program_receipt,state,53,0.3329885935813031 +local,b600k.cps0.acs100.s0,cps_native,tax_items,cd,1755,0.22032525761827734 +local,b600k.cps0.acs100.s0,cps_native,tax_items,national,23,0.43861664286244684 +local,b600k.cps0.acs100.s0,cps_native,tax_items,state,344,0.14896247912328456 +local,b600k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.010136052807003488 +local,b600k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.17540191309020567 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,872,0.2573326907795209 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8,0.2972360408199539 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308,0.2107342152095433 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.017211972245429037 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.22116412164157961 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.19875222246132418 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,23,0.2856630833022615 +local,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344,0.09722359194488588 +local,b600k.cps2022-2023-2024.acs050.s0,acs_native,demographics_pep,national,1,0.01576951353020201 +local,b600k.cps2022-2023-2024.acs050.s0,acs_native,demographics_pep,state,82,0.17558813189842468 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,cd,872,0.26088582830601276 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,national,8,0.2830318065696255 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,state,308,0.2256603840633608 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,program_receipt,national,1,0.010099248158177773 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,program_receipt,state,53,0.24308717902612242 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,cd,1755,0.19655521457696087 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,national,23,0.3374593957744932 +local,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,state,344,0.09556850042571938 +local,b600k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.01812033353474878 +local,b600k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.16790058348725412 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,872,0.2628712012827957 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8,0.27182257303377866 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308,0.22801475595028387 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.018400053924893685 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.26689463596538643 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.20038776901445057 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,23,0.43615331379058764 +local,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344,0.10891701658994464 +local,b600k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.009748047331019298 +local,b600k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.17274112771628558 +local,b600k.cps2023-2024.acs000.s0,cps_native,income_components,cd,872,0.26027196248353546 +local,b600k.cps2023-2024.acs000.s0,cps_native,income_components,national,8,0.32120354337761525 +local,b600k.cps2023-2024.acs000.s0,cps_native,income_components,state,308,0.22726229991374686 +local,b600k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.015818129127183264 +local,b600k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.23832240721713327 +local,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.1928647494876115 +local,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,national,23,0.2979852601887069 +local,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344,0.09638255758435196 +local,b600k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.02475917629860216 +local,b600k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.17279267026374792 +local,b600k.cps2023-2024.acs100.s0,cps_native,income_components,cd,872,0.2606081264075344 +local,b600k.cps2023-2024.acs100.s0,cps_native,income_components,national,8,0.28282101356103123 +local,b600k.cps2023-2024.acs100.s0,cps_native,income_components,state,308,0.2236640895251088 +local,b600k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.02135616415198129 +local,b600k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.2654557263444992 +local,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.20188015850038163 +local,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,national,23,0.44194955069191777 +local,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344,0.12214147564951856 +local,b600k.cps2024.acs000.s0,acs_native,demographics_pep,national,1,0.015799493172281204 +local,b600k.cps2024.acs000.s0,acs_native,demographics_pep,state,82,0.16296383138786746 +local,b600k.cps2024.acs000.s0,cps_native,income_components,cd,872,0.2655466487059627 +local,b600k.cps2024.acs000.s0,cps_native,income_components,national,8,0.33846945404864565 +local,b600k.cps2024.acs000.s0,cps_native,income_components,state,308,0.2493814685687504 +local,b600k.cps2024.acs000.s0,cps_native,program_receipt,national,1,0.013547045107091024 +local,b600k.cps2024.acs000.s0,cps_native,program_receipt,state,53,0.22907564730531144 +local,b600k.cps2024.acs000.s0,cps_native,tax_items,cd,1755,0.20108836641997946 +local,b600k.cps2024.acs000.s0,cps_native,tax_items,national,23,0.31425966531614646 +local,b600k.cps2024.acs000.s0,cps_native,tax_items,state,344,0.10892226992996659 +local,b600k.cps2024.acs050.s0,acs_native,demographics_pep,national,1,0.024562069452818306 +local,b600k.cps2024.acs050.s0,acs_native,demographics_pep,state,82,0.1683056230460101 +local,b600k.cps2024.acs050.s0,cps_native,income_components,cd,872,0.26287204115881546 +local,b600k.cps2024.acs050.s0,cps_native,income_components,national,8,0.3213737792597196 +local,b600k.cps2024.acs050.s0,cps_native,income_components,state,308,0.23432921919635682 +local,b600k.cps2024.acs050.s0,cps_native,program_receipt,national,1,0.00817443343464656 +local,b600k.cps2024.acs050.s0,cps_native,program_receipt,state,53,0.24338243766687528 +local,b600k.cps2024.acs050.s0,cps_native,tax_items,cd,1755,0.19706967294550723 +local,b600k.cps2024.acs050.s0,cps_native,tax_items,national,23,0.4077834979977588 +local,b600k.cps2024.acs050.s0,cps_native,tax_items,state,344,0.1028591653418102 +local,b600k.cps2024.acs100.s0,acs_native,demographics_pep,national,1,0.03450166581507053 +local,b600k.cps2024.acs100.s0,acs_native,demographics_pep,state,82,0.17796828282928034 +local,b600k.cps2024.acs100.s0,cps_native,income_components,cd,872,0.26300904906425776 +local,b600k.cps2024.acs100.s0,cps_native,income_components,national,8,0.29105670089519964 +local,b600k.cps2024.acs100.s0,cps_native,income_components,state,308,0.2156128538018088 +local,b600k.cps2024.acs100.s0,cps_native,program_receipt,national,1,0.030520846389040714 +local,b600k.cps2024.acs100.s0,cps_native,program_receipt,state,53,0.2972810264774454 +local,b600k.cps2024.acs100.s0,cps_native,tax_items,cd,1755,0.2072413688940883 +local,b600k.cps2024.acs100.s0,cps_native,tax_items,national,23,0.44066598840830024 +local,b600k.cps2024.acs100.s0,cps_native,tax_items,state,344,0.13087171934248212 +local,natural.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.006034169476003112 +local,natural.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.15388166362805228 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,872,0.29190097467234666 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8,0.31781093393731763 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308,0.2171361498676638 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.022028801366789155 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.2197060765645402 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.24087682593609547 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,23,0.2798020323072773 +local,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344,0.10119344800103709 +local,natural.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.00867427263331132 +local,natural.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.14465280966012622 +local,natural.cps2023-2024.acs100.s0,cps_native,income_components,cd,872,0.31378962190923876 +local,natural.cps2023-2024.acs100.s0,cps_native,income_components,national,8,0.37893621702072366 +local,natural.cps2023-2024.acs100.s0,cps_native,income_components,state,308,0.2353600697008607 +local,natural.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.02751921605655528 +local,natural.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.24257472693888676 +local,natural.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.26059525363225267 +local,natural.cps2023-2024.acs100.s0,cps_native,tax_items,national,23,0.3094767377158947 +local,natural.cps2023-2024.acs100.s0,cps_native,tax_items,state,344,0.11172690325900313 +local,natural.cps2024.acs100.s0,acs_native,demographics_pep,national,1,0.024214130186158107 +local,natural.cps2024.acs100.s0,acs_native,demographics_pep,state,82,0.13138699051834574 +local,natural.cps2024.acs100.s0,cps_native,income_components,cd,872,0.36645663663238376 +local,natural.cps2024.acs100.s0,cps_native,income_components,national,8,0.41993101833940544 +local,natural.cps2024.acs100.s0,cps_native,income_components,state,308,0.2562402942508585 +local,natural.cps2024.acs100.s0,cps_native,program_receipt,national,1,0.03505467954811919 +local,natural.cps2024.acs100.s0,cps_native,program_receipt,state,53,0.24908093565333903 +local,natural.cps2024.acs100.s0,cps_native,tax_items,cd,1755,0.32131021975603746 +local,natural.cps2024.acs100.s0,cps_native,tax_items,national,23,0.37903835027335536 +local,natural.cps2024.acs100.s0,cps_native,tax_items,state,344,0.1409739736411195 +national,b1200k.cps0.acs100.s0,acs_native,demographics_pep,national,1,0.02195769910410152 +national,b1200k.cps0.acs100.s0,acs_native,demographics_pep,state,82,0.18441106064342377 +national,b1200k.cps0.acs100.s0,cps_native,income_components,cd,872,0.3068695981615837 +national,b1200k.cps0.acs100.s0,cps_native,income_components,national,8,0.26888281404126946 +national,b1200k.cps0.acs100.s0,cps_native,income_components,state,308,0.23197237474725407 +national,b1200k.cps0.acs100.s0,cps_native,program_receipt,national,1,0.025553945100445036 +national,b1200k.cps0.acs100.s0,cps_native,program_receipt,state,53,0.2996804566303589 +national,b1200k.cps0.acs100.s0,cps_native,tax_items,cd,1755,0.2949915033129878 +national,b1200k.cps0.acs100.s0,cps_native,tax_items,national,23,0.3006692293302523 +national,b1200k.cps0.acs100.s0,cps_native,tax_items,state,344,0.13521094558855334 +national,b1200k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.0052202385313126366 +national,b1200k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.16777266351564055 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,872,0.3240142928853001 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8,0.32928572884478957 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308,0.2513346707648975 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.02302489934911462 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.20790520556155948 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.35243998638698654 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,23,0.23231087651861926 +national,b1200k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344,0.103106292409962 +national,b1200k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.013270541157751716 +national,b1200k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.16572583257448276 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,872,0.2989290971598074 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8,0.2840843723274111 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308,0.2170112714257001 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.019110770474478306 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.23949547435783827 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.3006641692191536 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,23,0.2861091152210414 +national,b1200k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344,0.11848225108641687 +national,b1200k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.002121032115383257 +national,b1200k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.1701091296385201 +national,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,cd,872,0.32821730887002326 +national,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,national,8,0.32209637831406707 +national,b1200k.cps2023-2024.acs000.s0,cps_native,income_components,state,308,0.23993486065598704 +national,b1200k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.02213059947226088 +national,b1200k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.21081576411829464 +national,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.35473939527048703 +national,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,national,23,0.2583598355237727 +national,b1200k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344,0.10524622022884024 +national,b1200k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.016589596111195922 +national,b1200k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.16789323516569246 +national,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,cd,872,0.2966627501642725 +national,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,national,8,0.2836889069129228 +national,b1200k.cps2023-2024.acs100.s0,cps_native,income_components,state,308,0.21910535458696764 +national,b1200k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.021106496711300833 +national,b1200k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.254270666452558 +national,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.29843685496032896 +national,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,national,23,0.28420590180418737 +national,b1200k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344,0.12140193109356652 +national,b1200k.cps2024.acs000.s0,acs_native,demographics_pep,national,1,0.0020245750337736686 +national,b1200k.cps2024.acs000.s0,acs_native,demographics_pep,state,82,0.16804774526293845 +national,b1200k.cps2024.acs000.s0,cps_native,income_components,cd,872,0.32321426176787 +national,b1200k.cps2024.acs000.s0,cps_native,income_components,national,8,0.31653521719443933 +national,b1200k.cps2024.acs000.s0,cps_native,income_components,state,308,0.27262464031059574 +national,b1200k.cps2024.acs000.s0,cps_native,program_receipt,national,1,0.02435512321864415 +national,b1200k.cps2024.acs000.s0,cps_native,program_receipt,state,53,0.21153125590840233 +national,b1200k.cps2024.acs000.s0,cps_native,tax_items,cd,1755,0.35536902701804124 +national,b1200k.cps2024.acs000.s0,cps_native,tax_items,national,23,0.24877758459348925 +national,b1200k.cps2024.acs000.s0,cps_native,tax_items,state,344,0.11162758094435697 +national,b1200k.cps2024.acs100.s0,acs_native,demographics_pep,national,1,0.020041541877410026 +national,b1200k.cps2024.acs100.s0,acs_native,demographics_pep,state,82,0.17531622479503287 +national,b1200k.cps2024.acs100.s0,cps_native,income_components,cd,872,0.30209796654927595 +national,b1200k.cps2024.acs100.s0,cps_native,income_components,national,8,0.2784779872920905 +national,b1200k.cps2024.acs100.s0,cps_native,income_components,state,308,0.22843448064670446 +national,b1200k.cps2024.acs100.s0,cps_native,program_receipt,national,1,0.02239293640499914 +national,b1200k.cps2024.acs100.s0,cps_native,program_receipt,state,53,0.26644343307680296 +national,b1200k.cps2024.acs100.s0,cps_native,tax_items,cd,1755,0.29531244493614367 +national,b1200k.cps2024.acs100.s0,cps_native,tax_items,national,23,0.28357578314364656 +national,b1200k.cps2024.acs100.s0,cps_native,tax_items,state,344,0.12662306516466945 +national,b300k.cps0.acs100.s0,acs_native,demographics_pep,national,1,0.016870192068919425 +national,b300k.cps0.acs100.s0,acs_native,demographics_pep,state,82,0.17631137645123166 +national,b300k.cps0.acs100.s0,cps_native,income_components,cd,872,0.350915568038958 +national,b300k.cps0.acs100.s0,cps_native,income_components,national,8,0.2717134961732203 +national,b300k.cps0.acs100.s0,cps_native,income_components,state,308,0.26125044364790023 +national,b300k.cps0.acs100.s0,cps_native,program_receipt,national,1,0.02724119086542924 +national,b300k.cps0.acs100.s0,cps_native,program_receipt,state,53,0.3032951550346929 +national,b300k.cps0.acs100.s0,cps_native,tax_items,cd,1755,0.3560470750567945 +national,b300k.cps0.acs100.s0,cps_native,tax_items,national,23,0.27576818516805407 +national,b300k.cps0.acs100.s0,cps_native,tax_items,state,344,0.1506784259545128 +national,b300k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.005167825391038847 +national,b300k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.16883232591661937 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,872,0.3615907118288358 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8,0.3297751549055941 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308,0.25016928296359214 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.02359433133322223 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.20768612837662662 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.3926992075693462 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,23,0.2326594277107196 +national,b300k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344,0.10326926102077237 +national,b300k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.008725727505773193 +national,b300k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.1694656640096662 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,872,0.34310072729086294 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8,0.2903538808568774 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308,0.2175345096397957 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.015996373905224303 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.18389306059868185 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.35558140672311955 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,23,0.1822513034232208 +national,b300k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344,0.11122761415655996 +national,b300k.cps2022-2023-2024.acs100.s1,acs_native,demographics_pep,national,1,0.007864647386341813 +national,b300k.cps2022-2023-2024.acs100.s1,acs_native,demographics_pep,state,82,0.15892294151193456 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,cd,872,0.3389154236765719 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,national,8,0.2962365744601121 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,income_components,state,308,0.2305607520155476 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,program_receipt,national,1,0.016840998167351837 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,program_receipt,state,53,0.19885977768618832 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,cd,1755,0.36270002757416264 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,national,23,0.3074058412484188 +national,b300k.cps2022-2023-2024.acs100.s1,cps_native,tax_items,state,344,0.11444292204091333 +national,b300k.cps2022-2023-2024.acs100.s2,acs_native,demographics_pep,national,1,0.013112172113125837 +national,b300k.cps2022-2023-2024.acs100.s2,acs_native,demographics_pep,state,82,0.16150427764582204 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,cd,872,0.3539299191123211 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,national,8,0.2864134513967582 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,income_components,state,308,0.22415015708249011 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,program_receipt,national,1,0.014709726614093675 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,program_receipt,state,53,0.21213674854359396 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,cd,1755,0.35569242121162814 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,national,23,0.15249122940125692 +national,b300k.cps2022-2023-2024.acs100.s2,cps_native,tax_items,state,344,0.1142276152315121 +national,b300k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.0017346938889252002 +national,b300k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.1703353292068738 +national,b300k.cps2023-2024.acs000.s0,cps_native,income_components,cd,872,0.35404209470395653 +national,b300k.cps2023-2024.acs000.s0,cps_native,income_components,national,8,0.3210570130142541 +national,b300k.cps2023-2024.acs000.s0,cps_native,income_components,state,308,0.241244989898294 +national,b300k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.02305290586260365 +national,b300k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.2117635469327823 +national,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.3911846861594681 +national,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,national,23,0.25857832146478343 +national,b300k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344,0.10525161471376977 +national,b300k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.010464550350701743 +national,b300k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.17130848948985308 +national,b300k.cps2023-2024.acs100.s0,cps_native,income_components,cd,872,0.3401155078982905 +national,b300k.cps2023-2024.acs100.s0,cps_native,income_components,national,8,0.2972821398423096 +national,b300k.cps2023-2024.acs100.s0,cps_native,income_components,state,308,0.23613502945233358 +national,b300k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.0168842267865189 +national,b300k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.21720632272633086 +national,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.3591210983888976 +national,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,national,23,0.2137062992316797 +national,b300k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344,0.12372753888842442 +national,b300k.cps2024.acs000.s0,acs_native,demographics_pep,national,1,0.0022592479979299533 +national,b300k.cps2024.acs000.s0,acs_native,demographics_pep,state,82,0.16759991019765672 +national,b300k.cps2024.acs000.s0,cps_native,income_components,cd,872,0.34897382529589976 +national,b300k.cps2024.acs000.s0,cps_native,income_components,national,8,0.3163897216505496 +national,b300k.cps2024.acs000.s0,cps_native,income_components,state,308,0.2717766467137627 +national,b300k.cps2024.acs000.s0,cps_native,program_receipt,national,1,0.024836190989934195 +national,b300k.cps2024.acs000.s0,cps_native,program_receipt,state,53,0.21478031358230748 +national,b300k.cps2024.acs000.s0,cps_native,tax_items,cd,1755,0.3832333032768762 +national,b300k.cps2024.acs000.s0,cps_native,tax_items,national,23,0.24870944665485342 +national,b300k.cps2024.acs000.s0,cps_native,tax_items,state,344,0.11192711452186348 +national,b300k.cps2024.acs100.s0,acs_native,demographics_pep,national,1,0.00931796336678804 +national,b300k.cps2024.acs100.s0,acs_native,demographics_pep,state,82,0.1597233602579953 +national,b300k.cps2024.acs100.s0,cps_native,income_components,cd,872,0.3532582767417465 +national,b300k.cps2024.acs100.s0,cps_native,income_components,national,8,0.3012468453260867 +national,b300k.cps2024.acs100.s0,cps_native,income_components,state,308,0.2488281348041939 +national,b300k.cps2024.acs100.s0,cps_native,program_receipt,national,1,0.016939819057195896 +national,b300k.cps2024.acs100.s0,cps_native,program_receipt,state,53,0.260413002804286 +national,b300k.cps2024.acs100.s0,cps_native,tax_items,cd,1755,0.3650350030379261 +national,b300k.cps2024.acs100.s0,cps_native,tax_items,national,23,0.2994017897158572 +national,b300k.cps2024.acs100.s0,cps_native,tax_items,state,344,0.13256622347613956 +national,b300k.cps2024.acs100.s1,acs_native,demographics_pep,national,1,0.015404802601410693 +national,b300k.cps2024.acs100.s1,acs_native,demographics_pep,state,82,0.16668764568786598 +national,b300k.cps2024.acs100.s1,cps_native,income_components,cd,872,0.36062824284710077 +national,b300k.cps2024.acs100.s1,cps_native,income_components,national,8,0.2977120578359827 +national,b300k.cps2024.acs100.s1,cps_native,income_components,state,308,0.25097710482668223 +national,b300k.cps2024.acs100.s1,cps_native,program_receipt,national,1,0.0178695300297639 +national,b300k.cps2024.acs100.s1,cps_native,program_receipt,state,53,0.26814652916269605 +national,b300k.cps2024.acs100.s1,cps_native,tax_items,cd,1755,0.3739603394650393 +national,b300k.cps2024.acs100.s1,cps_native,tax_items,national,23,0.2693044479188588 +national,b300k.cps2024.acs100.s1,cps_native,tax_items,state,344,0.1292905887274339 +national,b300k.cps2024.acs100.s2,acs_native,demographics_pep,national,1,0.010001515838666585 +national,b300k.cps2024.acs100.s2,acs_native,demographics_pep,state,82,0.15140609544121633 +national,b300k.cps2024.acs100.s2,cps_native,income_components,cd,872,0.3680128642901721 +national,b300k.cps2024.acs100.s2,cps_native,income_components,national,8,0.3008031095321073 +national,b300k.cps2024.acs100.s2,cps_native,income_components,state,308,0.24795753418976757 +national,b300k.cps2024.acs100.s2,cps_native,program_receipt,national,1,0.019857064931926485 +national,b300k.cps2024.acs100.s2,cps_native,program_receipt,state,53,0.1936747199064423 +national,b300k.cps2024.acs100.s2,cps_native,tax_items,cd,1755,0.37046845113497945 +national,b300k.cps2024.acs100.s2,cps_native,tax_items,national,23,0.2702204158477625 +national,b300k.cps2024.acs100.s2,cps_native,tax_items,state,344,0.12704222296996678 +national,b600k.cps0.acs100.s0,acs_native,demographics_pep,national,1,0.02011147630101239 +national,b600k.cps0.acs100.s0,acs_native,demographics_pep,state,82,0.18272324742321502 +national,b600k.cps0.acs100.s0,cps_native,income_components,cd,872,0.34133411221951987 +national,b600k.cps0.acs100.s0,cps_native,income_components,national,8,0.2689951671881319 +national,b600k.cps0.acs100.s0,cps_native,income_components,state,308,0.24966655406897992 +national,b600k.cps0.acs100.s0,cps_native,program_receipt,national,1,0.02489297997316097 +national,b600k.cps0.acs100.s0,cps_native,program_receipt,state,53,0.2929448280688965 +national,b600k.cps0.acs100.s0,cps_native,tax_items,cd,1755,0.3220342824785925 +national,b600k.cps0.acs100.s0,cps_native,tax_items,national,23,0.32618912843370335 +national,b600k.cps0.acs100.s0,cps_native,tax_items,state,344,0.14197510217799877 +national,b600k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.0053365734581045385 +national,b600k.cps2022-2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.16812914955780833 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,cd,872,0.3376517065402081 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,national,8,0.3294899882420628 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,income_components,state,308,0.2497558167425825 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.023530777211221248 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.20797277066731495 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.3652192798948609 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,national,23,0.23240027207961358 +national,b600k.cps2022-2023-2024.acs000.s0,cps_native,tax_items,state,344,0.1031874802625938 +national,b600k.cps2022-2023-2024.acs050.s0,acs_native,demographics_pep,national,1,0.009246832451492448 +national,b600k.cps2022-2023-2024.acs050.s0,acs_native,demographics_pep,state,82,0.16310377019843816 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,cd,872,0.3189222529052004 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,national,8,0.29512682597853446 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,income_components,state,308,0.21346085314456828 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,program_receipt,national,1,0.015882587687460887 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,program_receipt,state,53,0.18740334543196172 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,cd,1755,0.33251861837615476 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,national,23,0.20112119255669797 +national,b600k.cps2022-2023-2024.acs050.s0,cps_native,tax_items,state,344,0.1115046834722531 +national,b600k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.008554534227795198 +national,b600k.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.15873853658076328 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,872,0.326340403464118 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8,0.28937285212056435 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308,0.2210704782651005 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.016956899842189187 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.2248545879476049 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.326722381330332 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,23,0.2592897918440134 +national,b600k.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344,0.11602189617659167 +national,b600k.cps2023-2024.acs000.s0,acs_native,demographics_pep,national,1,0.001618349308075585 +national,b600k.cps2023-2024.acs000.s0,acs_native,demographics_pep,state,82,0.17051499247871507 +national,b600k.cps2023-2024.acs000.s0,cps_native,income_components,cd,872,0.3347323694317443 +national,b600k.cps2023-2024.acs000.s0,cps_native,income_components,national,8,0.32161404183154935 +national,b600k.cps2023-2024.acs000.s0,cps_native,income_components,state,308,0.24089602188398598 +national,b600k.cps2023-2024.acs000.s0,cps_native,program_receipt,national,1,0.022775186128494364 +national,b600k.cps2023-2024.acs000.s0,cps_native,program_receipt,state,53,0.2116351652999952 +national,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,cd,1755,0.368904656136587 +national,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,national,23,0.2583309803393381 +national,b600k.cps2023-2024.acs000.s0,cps_native,tax_items,state,344,0.10524017537062978 +national,b600k.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.0105143654325601 +national,b600k.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.1594929954913748 +national,b600k.cps2023-2024.acs100.s0,cps_native,income_components,cd,872,0.32941047070510837 +national,b600k.cps2023-2024.acs100.s0,cps_native,income_components,national,8,0.2921733910880401 +national,b600k.cps2023-2024.acs100.s0,cps_native,income_components,state,308,0.22528352031241805 +national,b600k.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.017101683358144604 +national,b600k.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.24584572541285485 +national,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.3249393362845628 +national,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,national,23,0.22130343570590474 +national,b600k.cps2023-2024.acs100.s0,cps_native,tax_items,state,344,0.12315745579178716 +national,b600k.cps2024.acs000.s0,acs_native,demographics_pep,national,1,0.0021358882635466037 +national,b600k.cps2024.acs000.s0,acs_native,demographics_pep,state,82,0.16789701330967022 +national,b600k.cps2024.acs000.s0,cps_native,income_components,cd,872,0.3396750458793437 +national,b600k.cps2024.acs000.s0,cps_native,income_components,national,8,0.31661731565981016 +national,b600k.cps2024.acs000.s0,cps_native,income_components,state,308,0.2721350308405871 +national,b600k.cps2024.acs000.s0,cps_native,program_receipt,national,1,0.024764169556657892 +national,b600k.cps2024.acs000.s0,cps_native,program_receipt,state,53,0.2137667160204601 +national,b600k.cps2024.acs000.s0,cps_native,tax_items,cd,1755,0.3625872245843673 +national,b600k.cps2024.acs000.s0,cps_native,tax_items,national,23,0.2487487501460838 +national,b600k.cps2024.acs000.s0,cps_native,tax_items,state,344,0.11175801102457911 +national,b600k.cps2024.acs050.s0,acs_native,demographics_pep,national,1,0.01059698398474791 +national,b600k.cps2024.acs050.s0,acs_native,demographics_pep,state,82,0.16224079914628323 +national,b600k.cps2024.acs050.s0,cps_native,income_components,cd,872,0.32029438996697507 +national,b600k.cps2024.acs050.s0,cps_native,income_components,national,8,0.29573623227329826 +national,b600k.cps2024.acs050.s0,cps_native,income_components,state,308,0.22744779909141397 +national,b600k.cps2024.acs050.s0,cps_native,program_receipt,national,1,0.015210309705621816 +national,b600k.cps2024.acs050.s0,cps_native,program_receipt,state,53,0.1980126668984462 +national,b600k.cps2024.acs050.s0,cps_native,tax_items,cd,1755,0.3315455914102883 +national,b600k.cps2024.acs050.s0,cps_native,tax_items,national,23,0.265495403448977 +national,b600k.cps2024.acs050.s0,cps_native,tax_items,state,344,0.11440855161234355 +national,b600k.cps2024.acs100.s0,acs_native,demographics_pep,national,1,0.016056707500882138 +national,b600k.cps2024.acs100.s0,acs_native,demographics_pep,state,82,0.16848626972379935 +national,b600k.cps2024.acs100.s0,cps_native,income_components,cd,872,0.33886879495866196 +national,b600k.cps2024.acs100.s0,cps_native,income_components,national,8,0.2875549420635022 +national,b600k.cps2024.acs100.s0,cps_native,income_components,state,308,0.23678916833887328 +national,b600k.cps2024.acs100.s0,cps_native,program_receipt,national,1,0.0190766849307172 +national,b600k.cps2024.acs100.s0,cps_native,program_receipt,state,53,0.26317788342170323 +national,b600k.cps2024.acs100.s0,cps_native,tax_items,cd,1755,0.3224528917590234 +national,b600k.cps2024.acs100.s0,cps_native,tax_items,national,23,0.27663489396783864 +national,b600k.cps2024.acs100.s0,cps_native,tax_items,state,344,0.12639218991981416 +national,natural.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.004905048111233447 +national,natural.cps2022-2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.16878172366700006 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,cd,872,0.3777395616208158 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,national,8,0.32980180744872545 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,income_components,state,308,0.2497527061900134 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.023465091254367004 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.2080660654966806 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.41925541938267114 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,national,23,0.23291743730409104 +national,natural.cps2022-2023-2024.acs100.s0,cps_native,tax_items,state,344,0.10331386245050982 +national,natural.cps2023-2024.acs100.s0,acs_native,demographics_pep,national,1,0.0011024277947811899 +national,natural.cps2023-2024.acs100.s0,acs_native,demographics_pep,state,82,0.1702495702655267 +national,natural.cps2023-2024.acs100.s0,cps_native,income_components,cd,872,0.39878707610553554 +national,natural.cps2023-2024.acs100.s0,cps_native,income_components,national,8,0.3208192686712129 +national,natural.cps2023-2024.acs100.s0,cps_native,income_components,state,308,0.2414815948793076 +national,natural.cps2023-2024.acs100.s0,cps_native,program_receipt,national,1,0.02307626869067111 +national,natural.cps2023-2024.acs100.s0,cps_native,program_receipt,state,53,0.21174810554203347 +national,natural.cps2023-2024.acs100.s0,cps_native,tax_items,cd,1755,0.4401128715666434 +national,natural.cps2023-2024.acs100.s0,cps_native,tax_items,national,23,0.2591656956830214 +national,natural.cps2023-2024.acs100.s0,cps_native,tax_items,state,344,0.1052393000286734 +national,natural.cps2024.acs100.s0,acs_native,demographics_pep,national,1,0.00204405073150566 +national,natural.cps2024.acs100.s0,acs_native,demographics_pep,state,82,0.1677059521885838 +national,natural.cps2024.acs100.s0,cps_native,income_components,cd,872,0.4372669490700439 +national,natural.cps2024.acs100.s0,cps_native,income_components,national,8,0.31648451055614024 +national,natural.cps2024.acs100.s0,cps_native,income_components,state,308,0.2696116341504152 +national,natural.cps2024.acs100.s0,cps_native,program_receipt,national,1,0.025047315767374664 +national,natural.cps2024.acs100.s0,cps_native,program_receipt,state,53,0.21615851274709622 +national,natural.cps2024.acs100.s0,cps_native,tax_items,cd,1755,0.5062172571570394 +national,natural.cps2024.acs100.s0,cps_native,tax_items,national,23,0.2487918124208845 +national,natural.cps2024.acs100.s0,cps_native,tax_items,state,344,0.1121591199800416 diff --git a/experiments/us-support-mix-bakeoff-20260930/holdout_unsupported.csv b/experiments/us-support-mix-bakeoff-20260930/holdout_unsupported.csv new file mode 100644 index 0000000000..a7ea5371f3 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/holdout_unsupported.csv @@ -0,0 +1,61 @@ +product,arm,0 +local,b1200k.cps0.acs100.s0,2 +local,b1200k.cps2022-2023-2024.acs000.s0,2 +local,b1200k.cps2022-2023-2024.acs100.s0,2 +local,b1200k.cps2023-2024.acs000.s0,2 +local,b1200k.cps2023-2024.acs100.s0,2 +local,b1200k.cps2024.acs000.s0,2 +local,b1200k.cps2024.acs100.s0,2 +local,b300k.cps0.acs100.s0,2 +local,b300k.cps2022-2023-2024.acs000.s0,2 +local,b300k.cps2022-2023-2024.acs100.s0,2 +local,b300k.cps2022-2023-2024.acs100.s1,2 +local,b300k.cps2022-2023-2024.acs100.s2,2 +local,b300k.cps2023-2024.acs000.s0,2 +local,b300k.cps2023-2024.acs100.s0,2 +local,b300k.cps2024.acs000.s0,2 +local,b300k.cps2024.acs100.s0,2 +local,b300k.cps2024.acs100.s1,2 +local,b300k.cps2024.acs100.s2,2 +local,b600k.cps0.acs100.s0,2 +local,b600k.cps2022-2023-2024.acs000.s0,2 +local,b600k.cps2022-2023-2024.acs050.s0,2 +local,b600k.cps2022-2023-2024.acs100.s0,2 +local,b600k.cps2023-2024.acs000.s0,2 +local,b600k.cps2023-2024.acs100.s0,2 +local,b600k.cps2024.acs000.s0,2 +local,b600k.cps2024.acs050.s0,2 +local,b600k.cps2024.acs100.s0,2 +local,natural.cps2022-2023-2024.acs100.s0,2 +local,natural.cps2023-2024.acs100.s0,2 +local,natural.cps2024.acs100.s0,22 +national,b1200k.cps0.acs100.s0,2 +national,b1200k.cps2022-2023-2024.acs000.s0,2 +national,b1200k.cps2022-2023-2024.acs100.s0,2 +national,b1200k.cps2023-2024.acs000.s0,2 +national,b1200k.cps2023-2024.acs100.s0,2 +national,b1200k.cps2024.acs000.s0,2 +national,b1200k.cps2024.acs100.s0,2 +national,b300k.cps0.acs100.s0,2 +national,b300k.cps2022-2023-2024.acs000.s0,2 +national,b300k.cps2022-2023-2024.acs100.s0,2 +national,b300k.cps2022-2023-2024.acs100.s1,2 +national,b300k.cps2022-2023-2024.acs100.s2,2 +national,b300k.cps2023-2024.acs000.s0,2 +national,b300k.cps2023-2024.acs100.s0,2 +national,b300k.cps2024.acs000.s0,2 +national,b300k.cps2024.acs100.s0,2 +national,b300k.cps2024.acs100.s1,2 +national,b300k.cps2024.acs100.s2,2 +national,b600k.cps0.acs100.s0,2 +national,b600k.cps2022-2023-2024.acs000.s0,2 +national,b600k.cps2022-2023-2024.acs050.s0,2 +national,b600k.cps2022-2023-2024.acs100.s0,2 +national,b600k.cps2023-2024.acs000.s0,2 +national,b600k.cps2023-2024.acs100.s0,2 +national,b600k.cps2024.acs000.s0,2 +national,b600k.cps2024.acs050.s0,2 +national,b600k.cps2024.acs100.s0,2 +national,natural.cps2022-2023-2024.acs100.s0,2 +national,natural.cps2023-2024.acs100.s0,2 +national,natural.cps2024.acs100.s0,22 diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_000.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_000.r0-750000.json new file mode 100644 index 0000000000..92a25dbb53 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_000.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24008, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 216.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 24008 + }, + "households": 24008, + "missing_measures": [], + "nnz": 321574, + "peak_rss_gb": 7.57, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_000.pkl", + "wall_s": 1210.0 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_000.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_000.r750000-1210000.json new file mode 100644 index 0000000000..0ccdc6ad60 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_000.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14494, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 186.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 14494 + }, + "households": 14494, + "missing_measures": [], + "nnz": 194475, + "peak_rss_gb": 9.36, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_000.pkl", + "wall_s": 375.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_001.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_001.r0-750000.json new file mode 100644 index 0000000000..71cbae95d4 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_001.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 23816, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 214.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 23816 + }, + "households": 23816, + "missing_measures": [], + "nnz": 318729, + "peak_rss_gb": 7.72, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_001.pkl", + "wall_s": 1210.1 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_001.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_001.r750000-1210000.json new file mode 100644 index 0000000000..09c450602b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_001.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14504, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 162.7, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 14504 + }, + "households": 14504, + "missing_measures": [], + "nnz": 192938, + "peak_rss_gb": 8.16, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_001.pkl", + "wall_s": 1659.8 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_002.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_002.r0-750000.json new file mode 100644 index 0000000000..fd54114d0e --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_002.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 23719, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 384.4, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 23719 + }, + "households": 23719, + "missing_measures": [], + "nnz": 319847, + "peak_rss_gb": 10.35, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_002.pkl", + "wall_s": 1848.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_002.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_002.r750000-1210000.json new file mode 100644 index 0000000000..a71023c9be --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_002.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14616, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 310.4, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 14616 + }, + "households": 14616, + "missing_measures": [], + "nnz": 194501, + "peak_rss_gb": 10.63, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_002.pkl", + "wall_s": 239.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_003.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_003.r0-750000.json new file mode 100644 index 0000000000..e84b5f7ae2 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_003.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24202, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 427.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36121 + }, + "households": 24202, + "missing_measures": [], + "nnz": 438523, + "peak_rss_gb": 10.74, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_003.pkl", + "wall_s": 1957.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_003.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_003.r750000-1210000.json new file mode 100644 index 0000000000..a8d7661844 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_003.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14835, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 306.0, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 21837 + }, + "households": 14835, + "missing_measures": [], + "nnz": 265990, + "peak_rss_gb": 13.65, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_003.pkl", + "wall_s": 1304.8 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_004.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_004.r0-750000.json new file mode 100644 index 0000000000..0c98e3fa9a --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_004.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24118, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 703.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58026 + }, + "households": 24118, + "missing_measures": [], + "nnz": 645906, + "peak_rss_gb": 11.5, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_004.pkl", + "wall_s": 1792.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_004.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_004.r750000-1210000.json new file mode 100644 index 0000000000..556d46ded8 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_004.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15253, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 467.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36788 + }, + "households": 15253, + "missing_measures": [], + "nnz": 409314, + "peak_rss_gb": 16.34, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_004.pkl", + "wall_s": 232.9 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_005.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_005.r0-750000.json new file mode 100644 index 0000000000..cc3aa493ac --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_005.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24361, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 747.0, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58545 + }, + "households": 24361, + "missing_measures": [], + "nnz": 652456, + "peak_rss_gb": 11.65, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_005.pkl", + "wall_s": 1704.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_005.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_005.r750000-1210000.json new file mode 100644 index 0000000000..6d4328f721 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_005.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15178, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 298.7, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36586 + }, + "households": 15178, + "missing_measures": [], + "nnz": 405978, + "peak_rss_gb": 14.64, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_005.pkl", + "wall_s": 543.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_006.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_006.r0-750000.json new file mode 100644 index 0000000000..766c6fb174 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_006.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24499, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1044.0, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58930 + }, + "households": 24499, + "missing_measures": [], + "nnz": 658167, + "peak_rss_gb": 12.44, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_006.pkl", + "wall_s": 1504.8 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_006.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_006.r750000-1210000.json new file mode 100644 index 0000000000..6e81eddd40 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_006.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15018, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 614.5, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36230 + }, + "households": 15018, + "missing_measures": [], + "nnz": 401773, + "peak_rss_gb": 17.46, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_006.pkl", + "wall_s": 226.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_007.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_007.r0-750000.json new file mode 100644 index 0000000000..4e8aa8a654 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_007.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24365, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1080.6, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58485 + }, + "households": 24365, + "missing_measures": [], + "nnz": 653135, + "peak_rss_gb": 12.55, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_007.pkl", + "wall_s": 1471.5 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_007.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_007.r750000-1210000.json new file mode 100644 index 0000000000..b19bfc7b3b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_007.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14914, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 445.8, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35824 + }, + "households": 14914, + "missing_measures": [], + "nnz": 401258, + "peak_rss_gb": 17.47, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_007.pkl", + "wall_s": 180.7 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_008.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_008.r0-750000.json new file mode 100644 index 0000000000..f60919e62e --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_008.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24450, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1332.5, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58996 + }, + "households": 24450, + "missing_measures": [], + "nnz": 660030, + "peak_rss_gb": 13.4, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_008.pkl", + "wall_s": 1464.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_008.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_008.r750000-1210000.json new file mode 100644 index 0000000000..a212ac41d2 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_008.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14939, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 792.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35816 + }, + "households": 14939, + "missing_measures": [], + "nnz": 401461, + "peak_rss_gb": 18.83, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_008.pkl", + "wall_s": 265.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_009.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_009.r0-750000.json new file mode 100644 index 0000000000..1deb7f0f1b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_009.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24446, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1370.0, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58836 + }, + "households": 24446, + "missing_measures": [], + "nnz": 652976, + "peak_rss_gb": 13.2, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_009.pkl", + "wall_s": 1499.1 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_009.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_009.r750000-1210000.json new file mode 100644 index 0000000000..080cae87d2 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_009.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14900, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 588.2, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35910 + }, + "households": 14900, + "missing_measures": [], + "nnz": 400342, + "peak_rss_gb": 18.31, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_009.pkl", + "wall_s": 226.8 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_010.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_010.r0-750000.json new file mode 100644 index 0000000000..77576b0cc0 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_010.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24309, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1640.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58246 + }, + "households": 24309, + "missing_measures": [], + "nnz": 651279, + "peak_rss_gb": 13.4, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_010.pkl", + "wall_s": 5502.1 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_010.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_010.r750000-1210000.json new file mode 100644 index 0000000000..70a1246045 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_010.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15058, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 966.9, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36166 + }, + "households": 15058, + "missing_measures": [], + "nnz": 403602, + "peak_rss_gb": 19.53, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_010.pkl", + "wall_s": 243.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_011.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_011.r0-750000.json new file mode 100644 index 0000000000..636ece4e3e --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_011.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24478, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1679.4, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58887 + }, + "households": 24478, + "missing_measures": [], + "nnz": 659237, + "peak_rss_gb": 13.2, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_011.pkl", + "wall_s": 2248.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_011.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_011.r750000-1210000.json new file mode 100644 index 0000000000..9295eb94a6 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_011.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14992, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 742.7, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36043 + }, + "households": 14992, + "missing_measures": [], + "nnz": 401622, + "peak_rss_gb": 19.09, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_011.pkl", + "wall_s": 234.0 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_012.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_012.r0-750000.json new file mode 100644 index 0000000000..86ae82270b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_012.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24417, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1976.7, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58840 + }, + "households": 24417, + "missing_measures": [], + "nnz": 654129, + "peak_rss_gb": 14.48, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_012.pkl", + "wall_s": 1007.5 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_012.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_012.r750000-1210000.json new file mode 100644 index 0000000000..d4b55bcc3c --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_012.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15110, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1155.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36286 + }, + "households": 15110, + "missing_measures": [], + "nnz": 403765, + "peak_rss_gb": 20.3, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_012.pkl", + "wall_s": 262.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_013.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_013.r0-750000.json new file mode 100644 index 0000000000..dabd58bb39 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_013.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24450, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1986.5, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58957 + }, + "households": 24450, + "missing_measures": [], + "nnz": 656744, + "peak_rss_gb": 13.2, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_013.pkl", + "wall_s": 1142.0 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_013.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_013.r750000-1210000.json new file mode 100644 index 0000000000..46f75c193a --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_013.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15079, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 933.7, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36075 + }, + "households": 15079, + "missing_measures": [], + "nnz": 406006, + "peak_rss_gb": 19.43, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_013.pkl", + "wall_s": 276.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_014.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_014.r0-750000.json new file mode 100644 index 0000000000..47e68a0879 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_014.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24444, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2320.4, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58476 + }, + "households": 24444, + "missing_measures": [], + "nnz": 655994, + "peak_rss_gb": 14.48, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_014.pkl", + "wall_s": 2684.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_014.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_014.r750000-1210000.json new file mode 100644 index 0000000000..bb4c4e7892 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_014.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15010, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1331.2, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35829 + }, + "households": 15010, + "missing_measures": [], + "nnz": 400557, + "peak_rss_gb": 20.65, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_014.pkl", + "wall_s": 215.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_015.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_015.r0-750000.json new file mode 100644 index 0000000000..7c0f6224f6 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_015.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24731, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2330.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 59184 + }, + "households": 24731, + "missing_measures": [], + "nnz": 660186, + "peak_rss_gb": 13.2, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_015.pkl", + "wall_s": 1280.5 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_015.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_015.r750000-1210000.json new file mode 100644 index 0000000000..bc6c233257 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_015.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14923, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1094.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35618 + }, + "households": 14923, + "missing_measures": [], + "nnz": 398516, + "peak_rss_gb": 19.88, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_015.pkl", + "wall_s": 224.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_016.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_016.r0-750000.json new file mode 100644 index 0000000000..cfea31ad35 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_016.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24430, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2649.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58804 + }, + "households": 24430, + "missing_measures": [], + "nnz": 654620, + "peak_rss_gb": 14.94, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_016.pkl", + "wall_s": 1810.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_016.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_016.r750000-1210000.json new file mode 100644 index 0000000000..26e1edb621 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_016.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15019, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1488.5, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35883 + }, + "households": 15019, + "missing_measures": [], + "nnz": 403174, + "peak_rss_gb": 21.02, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_016.pkl", + "wall_s": 223.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_017.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_017.r0-750000.json new file mode 100644 index 0000000000..b5f7f6916f --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_017.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24731, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2674.7, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 59030 + }, + "households": 24731, + "missing_measures": [], + "nnz": 663577, + "peak_rss_gb": 15.69, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_017.pkl", + "wall_s": 1446.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_017.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_017.r750000-1210000.json new file mode 100644 index 0000000000..4baec13fec --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_017.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14836, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1275.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36014 + }, + "households": 14836, + "missing_measures": [], + "nnz": 399792, + "peak_rss_gb": 20.34, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_017.pkl", + "wall_s": 263.0 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_018.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_018.r0-750000.json new file mode 100644 index 0000000000..d66bc9dac1 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_018.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24492, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2958.0, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58744 + }, + "households": 24492, + "missing_measures": [], + "nnz": 657118, + "peak_rss_gb": 16.31, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_018.pkl", + "wall_s": 1152.1 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_018.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_018.r750000-1210000.json new file mode 100644 index 0000000000..07f4f5e24a --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_018.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15021, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1643.6, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35969 + }, + "households": 15021, + "missing_measures": [], + "nnz": 401656, + "peak_rss_gb": 21.26, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_018.pkl", + "wall_s": 233.7 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_019.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_019.r0-750000.json new file mode 100644 index 0000000000..e170ae7fcf --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_019.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24518, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 3016.5, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58645 + }, + "households": 24518, + "missing_measures": [], + "nnz": 658818, + "peak_rss_gb": 15.69, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_019.pkl", + "wall_s": 2873.8 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_019.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_019.r750000-1210000.json new file mode 100644 index 0000000000..a3e6f9bcbc --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_019.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15003, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1429.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36035 + }, + "households": 15003, + "missing_measures": [], + "nnz": 402583, + "peak_rss_gb": 20.53, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_019.pkl", + "wall_s": 201.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_020.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_020.r0-750000.json new file mode 100644 index 0000000000..26ea479a07 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_020.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24527, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 3288.1, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 59016 + }, + "households": 24527, + "missing_measures": [], + "nnz": 661106, + "peak_rss_gb": 16.31, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_020.pkl", + "wall_s": 1497.7 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_020.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_020.r750000-1210000.json new file mode 100644 index 0000000000..aecac6b616 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_020.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15182, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1781.2, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36499 + }, + "households": 15182, + "missing_measures": [], + "nnz": 406928, + "peak_rss_gb": 21.53, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_020.pkl", + "wall_s": 215.1 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_021.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_021.r0-750000.json new file mode 100644 index 0000000000..ba86d63994 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_021.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24528, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 3360.2, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 59039 + }, + "households": 24528, + "missing_measures": [], + "nnz": 658964, + "peak_rss_gb": 15.69, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_021.pkl", + "wall_s": 1462.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_021.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_021.r750000-1210000.json new file mode 100644 index 0000000000..46bf0d52d4 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_021.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14990, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1592.4, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36189 + }, + "households": 14990, + "missing_measures": [], + "nnz": 401645, + "peak_rss_gb": 20.8, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_021.pkl", + "wall_s": 239.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_022.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_022.r0-750000.json new file mode 100644 index 0000000000..f5ed8c2b4b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_022.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24336, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 3610.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58431 + }, + "households": 24336, + "missing_measures": [], + "nnz": 651484, + "peak_rss_gb": 16.31, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_022.pkl", + "wall_s": 1308.7 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_022.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_022.r750000-1210000.json new file mode 100644 index 0000000000..396633a205 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_022.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14883, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1915.8, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35846 + }, + "households": 14883, + "missing_measures": [], + "nnz": 397527, + "peak_rss_gb": 21.78, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_022.pkl", + "wall_s": 193.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_023.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_023.r0-750000.json new file mode 100644 index 0000000000..f84a447d23 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_023.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24363, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 3676.2, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58225 + }, + "households": 24363, + "missing_measures": [], + "nnz": 654120, + "peak_rss_gb": 18.17, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_023.pkl", + "wall_s": 1186.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_023.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_023.r750000-1210000.json new file mode 100644 index 0000000000..8ae8ccb9cb --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_023.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15123, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1731.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36268 + }, + "households": 15123, + "missing_measures": [], + "nnz": 404461, + "peak_rss_gb": 20.92, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_023.pkl", + "wall_s": 224.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_024.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_024.r0-750000.json new file mode 100644 index 0000000000..b308730412 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_024.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24498, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 3856.7, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 59066 + }, + "households": 24498, + "missing_measures": [], + "nnz": 657380, + "peak_rss_gb": 16.72, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_024.pkl", + "wall_s": 868.9 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_024.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_024.r750000-1210000.json new file mode 100644 index 0000000000..6e128c8ce8 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_024.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14929, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2045.5, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35850 + }, + "households": 14929, + "missing_measures": [], + "nnz": 399688, + "peak_rss_gb": 22.09, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_024.pkl", + "wall_s": 155.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_025.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_025.r0-750000.json new file mode 100644 index 0000000000..f8264e1e3b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_025.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24556, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 4005.5, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 59209 + }, + "households": 24556, + "missing_measures": [], + "nnz": 657005, + "peak_rss_gb": 19.1, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_025.pkl", + "wall_s": 1279.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_025.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_025.r750000-1210000.json new file mode 100644 index 0000000000..ddebde6831 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_025.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14859, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1859.9, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36090 + }, + "households": 14859, + "missing_measures": [], + "nnz": 400977, + "peak_rss_gb": 21.4, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_025.pkl", + "wall_s": 200.1 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_026.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_026.r0-750000.json new file mode 100644 index 0000000000..72cb300909 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_026.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24396, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 4169.4, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58633 + }, + "households": 24396, + "missing_measures": [], + "nnz": 657190, + "peak_rss_gb": 17.61, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_026.pkl", + "wall_s": 2054.9 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_026.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_026.r750000-1210000.json new file mode 100644 index 0000000000..6e5d55d837 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_026.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15071, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2167.7, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36483 + }, + "households": 15071, + "missing_measures": [], + "nnz": 403221, + "peak_rss_gb": 22.46, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_026.pkl", + "wall_s": 130.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_027.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_027.r0-750000.json new file mode 100644 index 0000000000..d618d0d3c8 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_027.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24777, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 4319.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 59228 + }, + "households": 24777, + "missing_measures": [], + "nnz": 665835, + "peak_rss_gb": 19.1, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_027.pkl", + "wall_s": 1300.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_027.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_027.r750000-1210000.json new file mode 100644 index 0000000000..0f49490151 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_027.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 3, + "group_nesting_verified": true, + "households": 14953, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 1990.8, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 35948 + }, + "households": 14953, + "missing_measures": [], + "nnz": 400581, + "peak_rss_gb": 21.65, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_027.pkl", + "wall_s": 151.0 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_028.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_028.r0-750000.json new file mode 100644 index 0000000000..def36673d1 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_028.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24475, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 283.0, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 58424 + }, + "households": 24475, + "missing_measures": [], + "nnz": 659290, + "peak_rss_gb": 12.4, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_028.pkl", + "wall_s": 823.7 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_028.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_028.r750000-1210000.json new file mode 100644 index 0000000000..edbe00e485 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_028.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15105, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2274.3, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36079 + }, + "households": 15105, + "missing_measures": [], + "nnz": 403961, + "peak_rss_gb": 22.72, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_028.pkl", + "wall_s": 113.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_029.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_029.r0-750000.json new file mode 100644 index 0000000000..b3e7f4c343 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_029.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 5, + "group_nesting_verified": true, + "households": 24599, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 4632.0, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 59066 + }, + "households": 24599, + "missing_measures": [], + "nnz": 660416, + "peak_rss_gb": 19.1, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_029.pkl", + "wall_s": 1318.3 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_029.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_029.r750000-1210000.json new file mode 100644 index 0000000000..1f460d72d3 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_029.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15063, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2129.8, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 36491 + }, + "households": 15063, + "missing_measures": [], + "nnz": 402516, + "peak_rss_gb": 21.97, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_029.pkl", + "wall_s": 146.1 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_030.r0-750000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_030.r0-750000.json new file mode 100644 index 0000000000..b5b90d6a4e --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_030.r0-750000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 4, + "group_nesting_verified": true, + "households": 15426, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 198.0, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 37138 + }, + "households": 15426, + "missing_measures": [], + "nnz": 414033, + "peak_rss_gb": 12.0, + "rank_range": [ + 0, + 750000 + ], + "shard": "shard_030.pkl", + "wall_s": 664.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_030.r750000-1210000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_030.r750000-1210000.json new file mode 100644 index 0000000000..d881d1ed09 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/acs/shard_030.r750000-1210000.json @@ -0,0 +1,34 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 2, + "group_nesting_verified": true, + "households": 9578, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 2357.8, + "formula_derived_inputs": { + "person.is_spm_independent_minor_role": 22938 + }, + "households": 9578, + "missing_measures": [], + "nnz": 255123, + "peak_rss_gb": 22.72, + "rank_range": [ + 750000, + 1210000 + ], + "shard": "shard_030.pkl", + "wall_s": 95.0 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_000.json b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_000.json new file mode 100644 index 0000000000..0f464322bc --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_000.json @@ -0,0 +1,26 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 10, + "group_nesting_verified": true, + "households": 50000, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "households": 50000, + "missing_measures": [], + "nnz": 1176034, + "peak_rss_gb": 5.79, + "shard": "shard_000.pkl", + "wall_s": 2868.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_001.json b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_001.json new file mode 100644 index 0000000000..fefc44da67 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_001.json @@ -0,0 +1,26 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 10, + "group_nesting_verified": true, + "households": 50000, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "households": 50000, + "missing_measures": [], + "nnz": 1176937, + "peak_rss_gb": 9.1, + "shard": "shard_001.pkl", + "wall_s": 1477.8 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_002.json b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_002.json new file mode 100644 index 0000000000..d46d05438b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_002.json @@ -0,0 +1,29 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 10, + "group_nesting_verified": true, + "households": 50000, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 263.4, + "default_filled_inputs": {}, + "households": 50000, + "missing_measures": [], + "nnz": 1160667, + "peak_rss_gb": 8.4, + "rank_range": null, + "shard": "shard_002.pkl", + "wall_s": 1355.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_003.json b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_003.json new file mode 100644 index 0000000000..92e2ca324b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_003.json @@ -0,0 +1,29 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 10, + "group_nesting_verified": true, + "households": 50000, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 513.2, + "default_filled_inputs": {}, + "households": 50000, + "missing_measures": [], + "nnz": 1370784, + "peak_rss_gb": 10.2, + "rank_range": null, + "shard": "shard_003.pkl", + "wall_s": 516.0 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_004.json b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_004.json new file mode 100644 index 0000000000..7cc1dc79f4 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_004.json @@ -0,0 +1,29 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 10, + "group_nesting_verified": true, + "households": 50000, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 790.9, + "default_filled_inputs": {}, + "households": 50000, + "missing_measures": [], + "nnz": 1487652, + "peak_rss_gb": 10.35, + "rank_range": null, + "shard": "shard_004.pkl", + "wall_s": 386.7 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_005.json b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_005.json new file mode 100644 index 0000000000..887897f83a --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_005.json @@ -0,0 +1,29 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 10, + "group_nesting_verified": true, + "households": 50000, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 261.8, + "default_filled_inputs": {}, + "households": 50000, + "missing_measures": [], + "nnz": 1476724, + "peak_rss_gb": 8.23, + "rank_range": null, + "shard": "shard_005.pkl", + "wall_s": 1345.7 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_006.json b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_006.json new file mode 100644 index 0000000000..48aae71354 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_006.json @@ -0,0 +1,29 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 10, + "group_nesting_verified": true, + "households": 50000, + "jct_reform_families_simulated": 0, + "largest_batch_households": 5000, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "cpu_s": 567.4, + "default_filled_inputs": {}, + "households": 50000, + "missing_measures": [], + "nnz": 1569083, + "peak_rss_gb": 15.59, + "rank_range": null, + "shard": "shard_006.pkl", + "wall_s": 641.6 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_007.json b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_007.json new file mode 100644 index 0000000000..a229f25049 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/cps/shard_007.json @@ -0,0 +1,26 @@ +{ + "batching": { + "base_household_columns": 423, + "batches": 1, + "group_nesting_verified": true, + "households": 2932, + "jct_reform_families_simulated": 0, + "largest_batch_households": 2932, + "maximum_microsim_batch_size": 5000, + "method": "household_position_batches", + "population_aggregate_guard_armed": true, + "population_aggregate_variables_checked": [ + "household_income_decile", + "medicaid_slcsp_state_average_cost_index", + "medicaid_slcsp_state_denominator", + "spm_unit_income_decile" + ] + }, + "compiled_concepts": 421, + "households": 2932, + "missing_measures": [], + "nnz": 107555, + "peak_rss_gb": 5.13, + "shard": "shard_007.pkl", + "wall_s": 75.2 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/materialize/measures.json b/experiments/us-support-mix-bakeoff-20260930/materialize/measures.json new file mode 100644 index 0000000000..11f409f661 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/materialize/measures.json @@ -0,0 +1,424 @@ +[ + "bakeoff_concept_00000", + "bakeoff_concept_00001", + "bakeoff_concept_00002", + "bakeoff_concept_00003", + "bakeoff_concept_00004", + "bakeoff_concept_00005", + "bakeoff_concept_00006", + "bakeoff_concept_00007", + "bakeoff_concept_00008", + "bakeoff_concept_00009", + "bakeoff_concept_00010", + "bakeoff_concept_00011", + "bakeoff_concept_00012", + "bakeoff_concept_00013", + "bakeoff_concept_00014", + "bakeoff_concept_00015", + "bakeoff_concept_00016", + "bakeoff_concept_00017", + "bakeoff_concept_00018", + "bakeoff_concept_00019", + "bakeoff_concept_00020", + "bakeoff_concept_00021", + "bakeoff_concept_00022", + "bakeoff_concept_00023", + "bakeoff_concept_00024", + "bakeoff_concept_00025", + "bakeoff_concept_00026", + "bakeoff_concept_00027", + "bakeoff_concept_00028", + "bakeoff_concept_00029", + "bakeoff_concept_00030", + "bakeoff_concept_00031", + "bakeoff_concept_00032", + "bakeoff_concept_00033", + "bakeoff_concept_00034", + "bakeoff_concept_00035", + "bakeoff_concept_00036", + "bakeoff_concept_00037", + "bakeoff_concept_00038", + "bakeoff_concept_00039", + "bakeoff_concept_00040", + "bakeoff_concept_00041", + "bakeoff_concept_00042", + "bakeoff_concept_00043", + "bakeoff_concept_00044", + "bakeoff_concept_00045", + "bakeoff_concept_00046", + "bakeoff_concept_00047", + "bakeoff_concept_00048", + "bakeoff_concept_00049", + "bakeoff_concept_00050", + "bakeoff_concept_00051", + "bakeoff_concept_00052", + "bakeoff_concept_00053", + "bakeoff_concept_00054", + "bakeoff_concept_00055", + "bakeoff_concept_00056", + "bakeoff_concept_00057", + "bakeoff_concept_00058", + "bakeoff_concept_00059", + "bakeoff_concept_00060", + "bakeoff_concept_00061", + "bakeoff_concept_00062", + "bakeoff_concept_00063", + "bakeoff_concept_00064", + "bakeoff_concept_00065", + "bakeoff_concept_00066", + "bakeoff_concept_00067", + "bakeoff_concept_00068", + "bakeoff_concept_00069", + "bakeoff_concept_00070", + "bakeoff_concept_00071", + "bakeoff_concept_00072", + "bakeoff_concept_00073", + "bakeoff_concept_00074", + "bakeoff_concept_00075", + "bakeoff_concept_00076", + "bakeoff_concept_00077", + "bakeoff_concept_00078", + "bakeoff_concept_00079", + "bakeoff_concept_00080", + "bakeoff_concept_00081", + "bakeoff_concept_00082", + "bakeoff_concept_00083", + "bakeoff_concept_00084", + "bakeoff_concept_00085", + "bakeoff_concept_00086", + "bakeoff_concept_00087", + "bakeoff_concept_00088", + "bakeoff_concept_00089", + "bakeoff_concept_00090", + "bakeoff_concept_00091", + "bakeoff_concept_00092", + "bakeoff_concept_00093", + "bakeoff_concept_00094", + "bakeoff_concept_00095", + "bakeoff_concept_00096", + "bakeoff_concept_00097", + "bakeoff_concept_00098", + "bakeoff_concept_00099", + "bakeoff_concept_00100", + "bakeoff_concept_00101", + "bakeoff_concept_00102", + "bakeoff_concept_00103", + "bakeoff_concept_00104", + "bakeoff_concept_00105", + "bakeoff_concept_00106", + "bakeoff_concept_00107", + "bakeoff_concept_00108", + "bakeoff_concept_00109", + "bakeoff_concept_00110", + "bakeoff_concept_00111", + "bakeoff_concept_00112", + "bakeoff_concept_00113", + "bakeoff_concept_00114", + "bakeoff_concept_00115", + "bakeoff_concept_00116", + "bakeoff_concept_00117", + "bakeoff_concept_00118", + "bakeoff_concept_00119", + "bakeoff_concept_00120", + "bakeoff_concept_00121", + "bakeoff_concept_00122", + "bakeoff_concept_00123", + "bakeoff_concept_00124", + "bakeoff_concept_00125", + "bakeoff_concept_00126", + "bakeoff_concept_00127", + "bakeoff_concept_00128", + "bakeoff_concept_00129", + "bakeoff_concept_00130", + "bakeoff_concept_00131", + "bakeoff_concept_00132", + "bakeoff_concept_00133", + "bakeoff_concept_00134", + "bakeoff_concept_00135", + "bakeoff_concept_00136", + "bakeoff_concept_00137", + "bakeoff_concept_00138", + "bakeoff_concept_00139", + "bakeoff_concept_00140", + "bakeoff_concept_00141", + "bakeoff_concept_00142", + "bakeoff_concept_00143", + "bakeoff_concept_00144", + "bakeoff_concept_00145", + "bakeoff_concept_00146", + "bakeoff_concept_00147", + "bakeoff_concept_00148", + "bakeoff_concept_00149", + "bakeoff_concept_00150", + "bakeoff_concept_00151", + "bakeoff_concept_00152", + "bakeoff_concept_00153", + "bakeoff_concept_00154", + "bakeoff_concept_00155", + "bakeoff_concept_00156", + "bakeoff_concept_00157", + "bakeoff_concept_00158", + "bakeoff_concept_00159", + "bakeoff_concept_00160", + "bakeoff_concept_00161", + "bakeoff_concept_00162", + "bakeoff_concept_00163", + "bakeoff_concept_00164", + "bakeoff_concept_00165", + "bakeoff_concept_00166", + "bakeoff_concept_00167", + "bakeoff_concept_00168", + "bakeoff_concept_00169", + "bakeoff_concept_00170", + "bakeoff_concept_00171", + "bakeoff_concept_00172", + "bakeoff_concept_00173", + "bakeoff_concept_00174", + "bakeoff_concept_00175", + "bakeoff_concept_00176", + "bakeoff_concept_00177", + "bakeoff_concept_00178", + "bakeoff_concept_00179", + "bakeoff_concept_00180", + "bakeoff_concept_00181", + "bakeoff_concept_00182", + "bakeoff_concept_00183", + "bakeoff_concept_00184", + "bakeoff_concept_00185", + "bakeoff_concept_00186", + "bakeoff_concept_00187", + "bakeoff_concept_00188", + "bakeoff_concept_00189", + "bakeoff_concept_00190", + "bakeoff_concept_00191", + "bakeoff_concept_00192", + "bakeoff_concept_00193", + "bakeoff_concept_00194", + "bakeoff_concept_00195", + "bakeoff_concept_00196", + "bakeoff_concept_00197", + "bakeoff_concept_00198", + "bakeoff_concept_00199", + "bakeoff_concept_00200", + "bakeoff_concept_00201", + "bakeoff_concept_00202", + "bakeoff_concept_00203", + "bakeoff_concept_00204", + "bakeoff_concept_00205", + "bakeoff_concept_00206", + "bakeoff_concept_00207", + "bakeoff_concept_00208", + "bakeoff_concept_00209", + "bakeoff_concept_00210", + "bakeoff_concept_00211", + "bakeoff_concept_00212", + "bakeoff_concept_00213", + "bakeoff_concept_00214", + "bakeoff_concept_00215", + "bakeoff_concept_00216", + "bakeoff_concept_00217", + "bakeoff_concept_00218", + "bakeoff_concept_00219", + "bakeoff_concept_00220", + "bakeoff_concept_00221", + "bakeoff_concept_00222", + "bakeoff_concept_00223", + "bakeoff_concept_00224", + "bakeoff_concept_00225", + "bakeoff_concept_00226", + "bakeoff_concept_00227", + "bakeoff_concept_00228", + "bakeoff_concept_00229", + "bakeoff_concept_00230", + "bakeoff_concept_00231", + "bakeoff_concept_00232", + "bakeoff_concept_00233", + "bakeoff_concept_00234", + "bakeoff_concept_00235", + "bakeoff_concept_00236", + "bakeoff_concept_00237", + "bakeoff_concept_00238", + "bakeoff_concept_00239", + "bakeoff_concept_00240", + "bakeoff_concept_00241", + "bakeoff_concept_00242", + "bakeoff_concept_00243", + "bakeoff_concept_00244", + "bakeoff_concept_00245", + "bakeoff_concept_00246", + "bakeoff_concept_00247", + "bakeoff_concept_00248", + "bakeoff_concept_00249", + "bakeoff_concept_00250", + "bakeoff_concept_00251", + "bakeoff_concept_00252", + "bakeoff_concept_00253", + "bakeoff_concept_00254", + "bakeoff_concept_00255", + "bakeoff_concept_00256", + "bakeoff_concept_00257", + "bakeoff_concept_00258", + "bakeoff_concept_00259", + "bakeoff_concept_00260", + "bakeoff_concept_00261", + "bakeoff_concept_00262", + "bakeoff_concept_00263", + "bakeoff_concept_00264", + "bakeoff_concept_00265", + "bakeoff_concept_00266", + "bakeoff_concept_00267", + "bakeoff_concept_00268", + "bakeoff_concept_00269", + "bakeoff_concept_00270", + "bakeoff_concept_00271", + "bakeoff_concept_00272", + "bakeoff_concept_00273", + "bakeoff_concept_00274", + "bakeoff_concept_00275", + "bakeoff_concept_00276", + "bakeoff_concept_00277", + "bakeoff_concept_00278", + "bakeoff_concept_00279", + "bakeoff_concept_00280", + "bakeoff_concept_00281", + "bakeoff_concept_00282", + "bakeoff_concept_00283", + "bakeoff_concept_00284", + "bakeoff_concept_00285", + "bakeoff_concept_00286", + "bakeoff_concept_00287", + "bakeoff_concept_00288", + "bakeoff_concept_00289", + "bakeoff_concept_00290", + "bakeoff_concept_00291", + "bakeoff_concept_00292", + "bakeoff_concept_00293", + "bakeoff_concept_00294", + "bakeoff_concept_00295", + "bakeoff_concept_00296", + "bakeoff_concept_00297", + "bakeoff_concept_00298", + "bakeoff_concept_00299", + "bakeoff_concept_00300", + "bakeoff_concept_00301", + "bakeoff_concept_00302", + "bakeoff_concept_00303", + "bakeoff_concept_00304", + "bakeoff_concept_00305", + "bakeoff_concept_00306", + "bakeoff_concept_00307", + "bakeoff_concept_00308", + "bakeoff_concept_00309", + "bakeoff_concept_00310", + "bakeoff_concept_00311", + "bakeoff_concept_00312", + "bakeoff_concept_00313", + "bakeoff_concept_00314", + "bakeoff_concept_00315", + "bakeoff_concept_00316", + "bakeoff_concept_00317", + "bakeoff_concept_00318", + "bakeoff_concept_00319", + "bakeoff_concept_00320", + "bakeoff_concept_00321", + "bakeoff_concept_00322", + "bakeoff_concept_00323", + "bakeoff_concept_00324", + "bakeoff_concept_00325", + "bakeoff_concept_00326", + "bakeoff_concept_00327", + "bakeoff_concept_00328", + "bakeoff_concept_00329", + "bakeoff_concept_00330", + "bakeoff_concept_00331", + "bakeoff_concept_00332", + "bakeoff_concept_00333", + "bakeoff_concept_00334", + "bakeoff_concept_00335", + "bakeoff_concept_00336", + "bakeoff_concept_00337", + "bakeoff_concept_00338", + "bakeoff_concept_00339", + "bakeoff_concept_00340", + "bakeoff_concept_00341", + "bakeoff_concept_00342", + "bakeoff_concept_00343", + "bakeoff_concept_00344", + "bakeoff_concept_00345", + "bakeoff_concept_00346", + "bakeoff_concept_00347", + "bakeoff_concept_00348", + "bakeoff_concept_00349", + "bakeoff_concept_00350", + "bakeoff_concept_00351", + "bakeoff_concept_00352", + "bakeoff_concept_00353", + "bakeoff_concept_00354", + "bakeoff_concept_00355", + "bakeoff_concept_00356", + "bakeoff_concept_00357", + "bakeoff_concept_00358", + "bakeoff_concept_00359", + "bakeoff_concept_00360", + "bakeoff_concept_00361", + "bakeoff_concept_00362", + "bakeoff_concept_00363", + "bakeoff_concept_00364", + "bakeoff_concept_00365", + "bakeoff_concept_00366", + "bakeoff_concept_00367", + "bakeoff_concept_00368", + "bakeoff_concept_00369", + "bakeoff_concept_00370", + "bakeoff_concept_00371", + "bakeoff_concept_00372", + "bakeoff_concept_00373", + "bakeoff_concept_00374", + "bakeoff_concept_00375", + "bakeoff_concept_00376", + "bakeoff_concept_00377", + "bakeoff_concept_00378", + "bakeoff_concept_00379", + "bakeoff_concept_00380", + "bakeoff_concept_00381", + "bakeoff_concept_00382", + "bakeoff_concept_00383", + "bakeoff_concept_00384", + "bakeoff_concept_00385", + "bakeoff_concept_00386", + "bakeoff_concept_00387", + "bakeoff_concept_00388", + "bakeoff_concept_00389", + "bakeoff_concept_00390", + "bakeoff_concept_00391", + "bakeoff_concept_00392", + "bakeoff_concept_00393", + "bakeoff_concept_00394", + "bakeoff_concept_00395", + "bakeoff_concept_00396", + "bakeoff_concept_00397", + "bakeoff_concept_00398", + "bakeoff_concept_00399", + "bakeoff_concept_00400", + "bakeoff_concept_00401", + "bakeoff_concept_00402", + "bakeoff_concept_00403", + "bakeoff_concept_00404", + "bakeoff_concept_00405", + "bakeoff_concept_00406", + "bakeoff_concept_00407", + "bakeoff_concept_00408", + "bakeoff_concept_00409", + "bakeoff_concept_00410", + "bakeoff_concept_00411", + "bakeoff_concept_00412", + "bakeoff_concept_00413", + "bakeoff_concept_00414", + "bakeoff_concept_00415", + "bakeoff_concept_00416", + "bakeoff_concept_00417", + "bakeoff_concept_00418", + "bakeoff_report_spm_poor_persons", + "bakeoff_report_spm_poor_children", + "state_income_tax" +] \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/memo_tables.py b/experiments/us-support-mix-bakeoff-20260930/memo_tables.py new file mode 100644 index 0000000000..02c649c46d --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/memo_tables.py @@ -0,0 +1,70 @@ +"""Build the memo's results tables from the report receipts (no hand copying). + +Reads dimensions_by_arm.csv; arms with three ACS draws (the 300k one- and +three-year ACS arms) are shown as the mean of the draws. +Run: uv run python experiments/us-support-mix-bakeoff-20260930/memo_tables.py +""" + +from pathlib import Path + +import pandas as pd + +HERE = Path(__file__).resolve().parent +ROWS = { + "national": [ + ("CPS 2022–24 only", "natural.cps2022-2023-2024.acs100"), + ("CPS 2022–24 + clones to 300k", "b300k.cps2022-2023-2024.acs000"), + ("CPS 2024 + ACS to 300k (3 draws)", "b300k.cps2024.acs100"), + ("CPS 2023–24 + ACS to 300k", "b300k.cps2023-2024.acs100"), + ("**CPS 2022–24 + ACS to 300k (3 draws)**", "b300k.cps2022-2023-2024.acs100"), + ("ACS only, 300k", "b300k.cps0.acs100"), + ("CPS 2022–24 + 50/50 to 600k", "b600k.cps2022-2023-2024.acs050"), + ("CPS 2022–24 + ACS to 600k", "b600k.cps2022-2023-2024.acs100"), + ("CPS 2022–24 + ACS to 1.2M", "b1200k.cps2022-2023-2024.acs100"), + ], + "local": [ + ("CPS 2022–24 only", "natural.cps2022-2023-2024.acs100"), + ("CPS 2022–24 + clones to 600k", "b600k.cps2022-2023-2024.acs000"), + ("CPS 2022–24 + clones to 1.2M", "b1200k.cps2022-2023-2024.acs000"), + ("CPS 2022–24 + 50/50 to 600k", "b600k.cps2022-2023-2024.acs050"), + ("CPS 2022–24 + ACS to 600k", "b600k.cps2022-2023-2024.acs100"), + ("**CPS 2022–24 + ACS to 1.2M**", "b1200k.cps2022-2023-2024.acs100"), + ("CPS 2024 + ACS to 1.2M", "b1200k.cps2024.acs100"), + ("ACS only, 1.2M", "b1200k.cps0.acs100"), + ], +} +COLUMNS = [ + ("cps_native_weighted.state", "CPS-native, state"), + ("cps_native_weighted.cd", "CPS-native, CD"), + ("income_components.state", "Income, state"), + ("tax_items.state", "Tax items, state"), + ("program_receipt.state", "Program receipt, state"), + ("demographics_pep.state", "Age (PEP), state"), +] + + +def main() -> None: + table = pd.read_csv(HERE / "dimensions_by_arm.csv") + table["stem"] = table["arm"].str.replace(r"\.s\d+$", "", regex=True) + for product, rows in ROWS.items(): + print(f"### {product}\n") + head = "| Arm | Rows | ESS | " + " | ".join(label for _, label in COLUMNS) + " | ACS-native state / CD / county |" + print(head) + print("|" + "---|" * (head.count("|") - 1)) + for label, stem in rows: + group = table[(table["product"] == product) & (table["stem"] == stem)] + if "draws" not in label: + group = group[group["seed"] == 0] + mean = group.mean(numeric_only=True) + cells = [f"{mean[c]:.3f}" for c, _ in COLUMNS] + acs = " / ".join(f"{mean[f'acs_native.{lv}']:.3f}" for lv in ("state", "cd", "county")) + print(f"| {label} | {int(mean['rows']):,} | {mean['ess_distinct']:,.0f} | " + " | ".join(cells) + f" | {acs} |") + spread = table[(table["product"] == product) & table["stem"].eq(rows[4][1] if product == "national" else "b300k.cps2022-2023-2024.acs100")] + sd = spread.std(numeric_only=True) + cells = [f"{sd[c]:.3f}" for c, _ in COLUMNS] + acs = " / ".join(f"{sd[f'acs_native.{lv}']:.3f}" for lv in ("state", "cd", "county")) + print("| SD across 3 draws (300k, 2022–24) | | | " + " | ".join(cells) + f" | {acs} |\n") + + +if __name__ == "__main__": + main() diff --git a/experiments/us-support-mix-bakeoff-20260930/partcheck_acs.json b/experiments/us-support-mix-bakeoff-20260930/partcheck_acs.json new file mode 100644 index 0000000000..d7583dd0df --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/partcheck_acs.json @@ -0,0 +1,62 @@ +{ + "concept_specs_sha256": "ffedf394b91dafd353102a358ef7cf374eb518eb9f9164b8907e206b1bd60ab0", + "max_scaled_abs_diff": 5.82326495675032e-08, + "parts": { + "shard_000.r0-750000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 0.0, + "n_columns_over_tolerance": 0 + }, + "shard_003.r750000-1210000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.447629837039056e-08, + "n_columns_over_tolerance": 0 + }, + "shard_007.r0-750000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.243655635500912e-08, + "n_columns_over_tolerance": 0 + }, + "shard_012.r750000-1210000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.4455022574601887e-08, + "n_columns_over_tolerance": 0 + }, + "shard_015.r0-750000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.82326495675032e-08, + "n_columns_over_tolerance": 0 + }, + "shard_021.r750000-1210000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 4.908228158593294e-08, + "n_columns_over_tolerance": 0 + }, + "shard_028.r750000-1210000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 4.239946725917378e-08, + "n_columns_over_tolerance": 0 + }, + "shard_030.r0-750000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.025972904464072e-08, + "n_columns_over_tolerance": 0 + } + }, + "peak_rss_gb": 6.82, + "per_part": 200, + "shards": "/Users/maxghenis/PolicyEngine/_bakeoff-support-mix/work/shards/acs", + "source": "acs", + "source_h5_sha256": "ed2e63080aa39ab3681637590dc3dbac4bc9d01d163be9ee3c2ed28adc98d6ca", + "summary_sha256": "3aab5e5e0a6e226b90adf3c48f5f4d45fe51d716430be82b3455e88eafb6728d", + "tolerance": 1e-05, + "wall_s": 2042.4 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/partcheck_cps.json b/experiments/us-support-mix-bakeoff-20260930/partcheck_cps.json new file mode 100644 index 0000000000..daea5faf1b --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/partcheck_cps.json @@ -0,0 +1,62 @@ +{ + "concept_specs_sha256": "ffedf394b91dafd353102a358ef7cf374eb518eb9f9164b8907e206b1bd60ab0", + "max_scaled_abs_diff": 5.745301478087966e-08, + "parts": { + "shard_000.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 4.852139807865107e-08, + "n_columns_over_tolerance": 0 + }, + "shard_001.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 4.4159883064629645e-08, + "n_columns_over_tolerance": 0 + }, + "shard_002.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 4.814175938007279e-08, + "n_columns_over_tolerance": 0 + }, + "shard_003.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.3810296320387365e-08, + "n_columns_over_tolerance": 0 + }, + "shard_004.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.623471786395348e-08, + "n_columns_over_tolerance": 0 + }, + "shard_005.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.745301478087966e-08, + "n_columns_over_tolerance": 0 + }, + "shard_006.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 5.002892922832628e-08, + "n_columns_over_tolerance": 0 + }, + "shard_007.npz": { + "columns_over_tolerance": [], + "households": 200, + "max_scaled_abs_diff": 2.9203917845757813e-08, + "n_columns_over_tolerance": 0 + } + }, + "peak_rss_gb": 6.7, + "per_part": 200, + "shards": "/Users/maxghenis/PolicyEngine/_bakeoff-support-mix/partcheck/cps-shards/shards/cps", + "source": "cps", + "source_h5_sha256": "f7b46f4b83cb83f48ebe2a262a42495fcc18af85e96d4e5b52a63d2fe89d947b", + "summary_sha256": null, + "tolerance": 1e-05, + "wall_s": 2020.5 +} \ No newline at end of file diff --git a/experiments/us-support-mix-bakeoff-20260930/replicate_mean.csv b/experiments/us-support-mix-bakeoff-20260930/replicate_mean.csv new file mode 100644 index 0000000000..511937c908 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/replicate_mean.csv @@ -0,0 +1,5 @@ +product,cps_years,cps_native_weighted.state,cps_native_weighted.cd,income_components.state,income_components.cd,tax_items.state,tax_items.cd,program_receipt.state,demographics_pep.state,acs_native.state,acs_native.cd,acs_native.county +local,1,0.11894318079650662,0.19172382198188176,0.22690030366787017,0.28799363964692565,0.13663843894794359,0.2274115950024009,0.28775966790796403,0.15847767825987774,0.07958422347466958,0.15258728495547655,0.2204873690953388 +local,3,0.1121404782384457,0.18847554352416773,0.22872348511799676,0.28100577107478103,0.10304270496916955,0.2174572238251428,0.23700948112290268,0.1656717039231341,0.10976954935966093,0.20412753502506617,0.2505918358640243 +national,1,0.11719139228491672,0.3000152156752607,0.24925425794021458,0.3608241822139546,0.12963301172451341,0.37112420444172084,0.24074475062447478,0.15927236712902587,0.0856279370641836,0.16629675307597977,0.2549953962695645 +national,3,0.11344403854754743,0.29060085792301577,0.22408180624594445,0.34573459904498427,0.1132993838096618,0.35831347483639103,0.19829652894282138,0.16329762772247428,0.11002638468920033,0.18828742304459464,0.2586466421697818 diff --git a/experiments/us-support-mix-bakeoff-20260930/replicate_spread.csv b/experiments/us-support-mix-bakeoff-20260930/replicate_spread.csv new file mode 100644 index 0000000000..e255404d45 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/replicate_spread.csv @@ -0,0 +1,5 @@ +product,cps_years,cps_native_weighted.state,cps_native_weighted.cd,income_components.state,income_components.cd,tax_items.state,tax_items.cd,program_receipt.state,demographics_pep.state,acs_native.state,acs_native.cd,acs_native.county +local,1,0.0021382955135564566,0.0033238529093177044,0.006379544884992923,0.01156960527790735,0.003656044965125471,0.0020583177504610857,0.024184288036940685,0.008761082783022367,0.00202796215204033,0.001991683419148612,0.0021399579716624606 +local,3,0.000951584189827157,0.0018887321532608471,0.006572927521882116,0.002187831181070142,0.002166421431950712,0.0019497770531794129,0.00569989826264732,0.001569968197074798,0.00022579896378769324,0.0016328598786634271,0.00048709241981480315 +national,1,0.0021202551404598457,0.001971241618144151,0.0015542320943534686,0.007985798596900882,0.002777874282566795,0.0032961036113893245,0.040946827732212004,0.007650750981897314,0.0014198978206555368,0.0020745229020417114,0.003164172245521262 +national,3,0.000279345580907213,0.0022284614766071424,0.00651339016838397,0.007025408080724732,0.00179743188387736,0.005016700663172885,0.014130265887185979,0.005495391504626003,0.0006413096855843224,0.0012720996328500355,0.002217899701858923 diff --git a/experiments/us-support-mix-bakeoff-20260930/spm_flags.json b/experiments/us-support-mix-bakeoff-20260930/spm_flags.json new file mode 100644 index 0000000000..ccbe6974e9 --- /dev/null +++ b/experiments/us-support-mix-bakeoff-20260930/spm_flags.json @@ -0,0 +1,9 @@ +{ + "acs_households": 1531614, + "group_quarters_households": 183206, + "group_quarters_share": 0.11961630019051797, + "rule": "age >= 18 or (age >= 15 and (is_household_head or is_household_spouse)), per SPM unit", + "spm_zero_adult_households": 5246, + "spm_zero_adult_in_group_quarters": 5246, + "spm_zero_adult_share": 0.003425144977781608 +} \ No newline at end of file diff --git a/packages/microcosm-build/src/microcosm/build/us_runtime/support_mix.py b/packages/microcosm-build/src/microcosm/build/us_runtime/support_mix.py new file mode 100644 index 0000000000..62799663ba --- /dev/null +++ b/packages/microcosm-build/src/microcosm/build/us_runtime/support_mix.py @@ -0,0 +1,400 @@ +"""Support-mix bake-off primitives: CPS years and ACS rows at fixed row budgets. + +The US calibration support can grow two ways. Pooling more CPS ASEC years adds +households at full CPS richness; adding ACS households adds real variation in +what the ACS observes (housing, local geography, composition) and only model +draws in what it does not (the CPS-only variables imputed onto ACS rows). A +third way, cloning CPS households to new locations, adds degrees of freedom +for geography alone. This module holds the pure, engine-free pieces of a +bake-off that compares those mixes at a fixed household budget: + +- arm planning: how many CPS source households, ACS households and CPS + location clones an arm holds (:func:`plan_arm_counts`); +- nested, identity-keyed ACS selection (:func:`acs_selection_order`), so a + smaller arm's ACS households are always a subset of a larger arm's; +- deterministic clone allocation (:func:`clone_copies`); +- the arm's starting weights (:func:`arm_initial_weights`); +- the US target split mirrored from the pending ``target_split`` module + (:func:`target_split_group_key`, :func:`target_split_role`); +- effective sample size over distinct households (:func:`distinct_unit_ess`). + +A "source household" is one survey household record: one ASEC household-year +or one ACS household. A CPS source household keeps its PUF tax-detail clone +rows (the Route A support channels), so it can span two or three physical +rows; every physical row of one source household shares one unit key. +""" + +from __future__ import annotations + +import hashlib +import math +import re +from collections.abc import Iterable, Mapping, Sequence +from dataclasses import dataclass + +import numpy as np + +__all__ = [ + "HOLDOUT_FRACTION", + "SEALED_FRACTION", + "TARGET_SPLIT_HOLDOUT_SALT", + "TARGET_SPLIT_SEALED_SALT", + "ArmCounts", + "SupportMixArm", + "acs_selection_order", + "arm_initial_weights", + "assemble_target_matrix", + "clone_copies", + "distinct_unit_ess", + "hash_uniform", + "kish_ess", + "plan_arm_counts", + "target_split_group_key", + "target_split_role", +] + +#: The release split's salts and fractions, copied from the unmerged +#: ``us-target-roles-holdout`` branch (microcosm.build.us_runtime.target_split) +#: as of 2026-09-28. Its pins, which force whole groups to train, are not +#: mirrored: they were not yet written. Swap this block for that module once +#: it merges. +TARGET_SPLIT_SEALED_SALT = "microcosm.us.target_split.v1.sealed" +TARGET_SPLIT_HOLDOUT_SALT = "microcosm.us.target_split.v1.holdout" +SEALED_FRACTION = 0.05 +HOLDOUT_FRACTION = 0.10 + +_HASH_UNIFORM_SCALE = float(2**64) +_VINTAGE_TOKEN = re.compile(r"^(?:(?:ty|cy|fy|v|oep)\d{4}|month\d{4}_\d{1,2})$") +_HEX16_TOKEN = re.compile(r"^[0-9a-f]{16}$") + + +def hash_uniform(key: str, *, salt: str) -> float: + """A key's deterministic uniform draw on ``[0, 1)``. + + ``sha256(salt + "\\x1f" + key)``, first 8 bytes big-endian, divided by + ``2**64`` — byte-identical to the pending + ``microcosm.build.holdout.hash_holdout_uniform``. The draw depends only on + the key and the salt, never on which other keys exist or their order. + """ + if not isinstance(key, str) or not key: + raise ValueError(f"hash key must be a non-empty string, got {key!r}.") + if not isinstance(salt, str) or not salt: + raise ValueError(f"hash salt must be a non-empty string, got {salt!r}.") + digest = hashlib.sha256(f"{salt}\x1f{key}".encode()).digest() + return int.from_bytes(digest[:8], "big") / _HASH_UNIFORM_SCALE + + +def target_split_group_key(name: str, hierarchy_parent: str | None = None) -> str: + """The unit a target's split role is drawn for. + + A congressional-district child takes its state parent's key, so a + district is never held out while its parent and trained siblings pin it. + The name is split on ``"."``; vintage tokens (``ty2023``, ``v2024``, + ``month2024_7``, ...) are dropped so a restated vintage keeps its role; + names with a ``current_cd`` token also drop a trailing 16-hex digest. + Bare 4-digit tokens are district GEOIDs and are always kept. + """ + source = hierarchy_parent if hierarchy_parent else name + if not isinstance(source, str) or not source: + raise ValueError(f"target name must be a non-empty string, got {source!r}.") + tokens = [token for token in source.split(".") if not _VINTAGE_TOKEN.match(token)] + if "current_cd" in tokens and tokens and _HEX16_TOKEN.match(tokens[-1]): + tokens = tokens[:-1] + return ".".join(tokens) + + +def target_split_role(group_key: str) -> str: + """``"sealed"``, ``"holdout"`` or ``"train"`` for one group key. + + Sealed first, on its own salt, so the sealed tier rotates independently + of the holdout; then holdout on the holdout salt. About 5% sealed, 9.5% + holdout, 85.5% train. + """ + if hash_uniform(group_key, salt=TARGET_SPLIT_SEALED_SALT) < SEALED_FRACTION: + return "sealed" + if hash_uniform(group_key, salt=TARGET_SPLIT_HOLDOUT_SALT) < HOLDOUT_FRACTION: + return "holdout" + return "train" + + +@dataclass(frozen=True) +class SupportMixArm: + """One bake-off arm. + + Attributes: + budget: Source households in the arm, or ``None`` for a CPS-only arm + at its natural size (no fill). + cps_income_years: ASEC income years whose households are all kept. + acs_fill_share: Share of the fill (``budget`` minus the CPS source + households) taken by ACS households; the rest are CPS location + clones. ``1.0`` fills with ACS only, ``0.0`` with clones only. + seed: Replicate index. The bake-off driver takes the ``seed``-th + disjoint block of one fixed ACS order (so seed 0 arms are nested + across budgets and replicates are independent draws) and salts + the clone draws with it. + """ + + budget: int | None + cps_income_years: tuple[int, ...] + acs_fill_share: float = 1.0 + seed: int = 0 + + def __post_init__(self) -> None: + if self.budget is not None and ( + isinstance(self.budget, bool) or int(self.budget) <= 0 + ): + raise ValueError(f"budget must be positive or None, got {self.budget!r}.") + years = tuple(int(year) for year in self.cps_income_years) + if len(set(years)) != len(years): + raise ValueError(f"cps_income_years repeats a year: {years}.") + object.__setattr__(self, "cps_income_years", tuple(sorted(years))) + share = float(self.acs_fill_share) + if not (math.isfinite(share) and 0.0 <= share <= 1.0): + raise ValueError(f"acs_fill_share must be in [0, 1], got {share!r}.") + object.__setattr__(self, "acs_fill_share", share) + + @property + def label(self) -> str: + budget = "natural" if self.budget is None else f"b{self.budget // 1000}k" + years = ( + "cps" + "-".join(str(year) for year in self.cps_income_years) + if self.cps_income_years + else "cps0" + ) + return f"{budget}.{years}.acs{round(self.acs_fill_share * 100):03d}.s{self.seed}" + + +@dataclass(frozen=True) +class ArmCounts: + """Source-household counts of one arm; they sum to its budget.""" + + cps: int + acs: int + clones: int + + @property + def total(self) -> int: + return self.cps + self.acs + self.clones + + +def plan_arm_counts( + arm: SupportMixArm, + *, + cps_households_by_year: Mapping[int, int], + acs_households: int, +) -> ArmCounts: + """How many CPS, ACS and clone source households ``arm`` holds. + + Raises: + ValueError: If a year has no CPS households, the CPS years alone + exceed the budget, clones are requested without CPS households, + or the ACS fill exceeds the ACS households available. + """ + missing = [year for year in arm.cps_income_years if year not in cps_households_by_year] + if missing: + raise ValueError(f"no CPS households for income year(s) {missing}.") + cps = int(sum(int(cps_households_by_year[year]) for year in arm.cps_income_years)) + if arm.budget is None: + return ArmCounts(cps=cps, acs=0, clones=0) + fill = int(arm.budget) - cps + if fill < 0: + raise ValueError( + f"{arm.label}: {cps:,} CPS source households exceed the " + f"{arm.budget:,} budget." + ) + acs = int(round(fill * arm.acs_fill_share)) + clones = fill - acs + if clones and not cps: + raise ValueError(f"{arm.label}: clones need at least one CPS household.") + if acs > int(acs_households): + raise ValueError( + f"{arm.label}: the ACS fill of {acs:,} exceeds the " + f"{int(acs_households):,} ACS households available." + ) + return ArmCounts(cps=cps, acs=acs, clones=clones) + + +def acs_selection_order(unit_keys: Sequence[str], *, salt: str) -> np.ndarray: + """Positions of ``unit_keys`` in selection order. + + An arm with ``n`` ACS households takes the first ``n`` positions, so + selections are nested across budgets: every household in a smaller arm is + in every larger arm with the same salt. Ties (identical draws) break by + key, so the order is a pure function of the key set. + """ + keys = [str(key) for key in unit_keys] + draws = np.fromiter( + (hash_uniform(key, salt=salt) for key in keys), dtype=np.float64, count=len(keys) + ) + return np.lexsort((np.asarray(keys, dtype=object).astype(str), draws)) + + +def clone_copies(unit_keys: Sequence[str], n_clones: int, *, salt: str) -> np.ndarray: + """Extra location copies per CPS source household, summing to ``n_clones``. + + Every household gets ``n_clones // n`` copies and the remainder goes to + the households first in hash order, so no household carries more than one + copy above any other. + """ + n = len(unit_keys) + if n_clones < 0: + raise ValueError(f"n_clones must be non-negative, got {n_clones!r}.") + if n == 0: + if n_clones: + raise ValueError("clones need at least one CPS household.") + return np.zeros(0, dtype=np.int64) + copies = np.full(n, n_clones // n, dtype=np.int64) + remainder = n_clones - int(copies.sum()) + if remainder: + order = acs_selection_order(unit_keys, salt=salt) + copies[order[:remainder]] += 1 + return copies + + +def arm_initial_weights( + *, + cps_design_weights: np.ndarray, + cps_income_year: np.ndarray, + cps_copies: np.ndarray, + acs_design_weights: np.ndarray, + counts: ArmCounts, + total_mass: float, +) -> tuple[np.ndarray, np.ndarray]: + """Starting weights for an arm's CPS rows (with copies) and ACS rows. + + - Each CPS income year gets an equal share of the CPS mass, keeping the + within-year design weights' shape. + - A CPS row with ``k`` copies splits its weight over ``1 + k`` rows. + - The ACS rows keep their design weights' shape. + - The CPS side (source households plus clones) and the ACS side share + ``total_mass`` in proportion to their source-household counts, so the + mean starting weight per source household is the same on both sides. + + Args: + cps_design_weights: Design weight per selected CPS physical row. + cps_income_year: Income year per selected CPS physical row. + cps_copies: Extra copies per selected CPS physical row (every row of + one source household carries that household's count). + acs_design_weights: Design weight per selected ACS row. + counts: The arm's source-household counts. + total_mass: The household weight the arm's weights sum to. + + Returns: + ``(cps_row_weights, acs_row_weights)``: the CPS array is per physical + row *per copy* (divide-by-``1 + k`` already applied), to be repeated + ``1 + k`` times by the caller. + """ + cps_w = np.asarray(cps_design_weights, dtype=np.float64) + years = np.asarray(cps_income_year) + copies = np.asarray(cps_copies, dtype=np.int64) + acs_w = np.asarray(acs_design_weights, dtype=np.float64) + if cps_w.shape != years.shape or cps_w.shape != copies.shape: + raise ValueError("CPS weights, years and copies must align.") + for name, values in (("CPS", cps_w), ("ACS", acs_w)): + if not np.isfinite(values).all() or (values <= 0).any(): + raise ValueError(f"{name} design weights must be finite and positive.") + if (copies < 0).any(): + raise ValueError("copies must be non-negative.") + if not (math.isfinite(total_mass) and total_mass > 0): + raise ValueError(f"total_mass must be positive, got {total_mass!r}.") + source = counts.total + if source <= 0: + raise ValueError("an arm needs at least one source household.") + cps_share = (counts.cps + counts.clones) / source + acs_share = counts.acs / source + if (counts.cps + counts.clones) and not len(cps_w): + raise ValueError("counts declare CPS households but no CPS rows were given.") + if counts.acs and not len(acs_w): + raise ValueError("counts declare ACS households but no ACS rows were given.") + + cps_out = np.zeros_like(cps_w) + if len(cps_w): + unique_years = np.unique(years) + per_year_mass = cps_share * total_mass / len(unique_years) + for year in unique_years: + in_year = years == year + cps_out[in_year] = cps_w[in_year] * (per_year_mass / cps_w[in_year].sum()) + cps_out = cps_out / (1 + copies) + acs_out = ( + acs_w * (acs_share * total_mass / acs_w.sum()) if len(acs_w) else acs_w.copy() + ) + return cps_out, acs_out + + +def kish_ess(weights: np.ndarray) -> float: + """Kish effective sample size ``(sum w)^2 / sum w^2`` over rows.""" + w = np.asarray(weights, dtype=np.float64) + if not np.isfinite(w).all() or (w < 0).any(): + raise ValueError("weights must be finite and non-negative.") + denominator = float(np.square(w).sum()) + return 0.0 if denominator == 0.0 else float(w.sum() ** 2 / denominator) + + +def distinct_unit_ess(weights: np.ndarray, unit_codes: Iterable) -> float: + """Kish ESS after summing weights within each distinct unit. + + A repeated household (the same ASEC housing unit in two rotation years, a + PUF clone row, a location clone) is one unit, so its rows count once. + Never exceeds the row-level Kish ESS nor the number of distinct units. + """ + w = np.asarray(weights, dtype=np.float64) + codes = np.asarray(list(unit_codes) if not isinstance(unit_codes, np.ndarray) else unit_codes) + if codes.shape != w.shape: + raise ValueError("weights and unit codes must align.") + _, inverse = np.unique(codes, return_inverse=True) + unit_weight = np.bincount(inverse.ravel(), weights=w) + return kish_ess(unit_weight) + + +def assemble_target_matrix( + values, + row_geography: Mapping[str, np.ndarray], + target_concept: np.ndarray, + target_level: Sequence[str], + target_geography: np.ndarray, +): + """Targets x rows: ``A[t, i] = values[i, concept(t)]`` where row ``i`` is + in target ``t``'s geography, else 0. + + ``values`` is a rows x concepts sparse matrix. ``row_geography`` maps each + level (``"state"``, ``"cd"``) to one integer code per row; ``"national"`` + needs none. Several targets may share a (concept, level, geography) cell + (the same concept published by two sources); each receives the cell's + values. + """ + import scipy.sparse as sp + + coo = sp.coo_matrix(values) + concept = np.asarray(target_concept, dtype=np.int64) + level = np.asarray(target_level, dtype=object) + geography = np.asarray(target_geography, dtype=np.int64) + n_targets, n_rows = len(concept), coo.shape[0] + rows_parts, cols_parts, data_parts = [], [], [] + for name in np.unique(level): + sel = np.flatnonzero(level == name) + if name == "national": + row_geo = np.zeros(n_rows, dtype=np.int64) + target_geo = np.zeros(len(sel), dtype=np.int64) + else: + row_geo = np.asarray(row_geography[name], dtype=np.int64) + target_geo = geography[sel] + span = int(max(row_geo.max(initial=0), target_geo.max(initial=0))) + 1 + cell = concept[sel] * span + target_geo + order = np.argsort(cell, kind="stable") + cells_sorted, targets_sorted = cell[order], sel[order] + entry = coo.col.astype(np.int64) * span + row_geo[coo.row] + low = np.searchsorted(cells_sorted, entry, "left") + count = np.searchsorted(cells_sorted, entry, "right") - low + keep = count > 0 + repeat = count[keep] + starts = np.repeat(low[keep], repeat) + offsets = np.arange(int(repeat.sum())) - np.repeat(np.cumsum(repeat) - repeat, repeat) + rows_parts.append(targets_sorted[starts + offsets]) + cols_parts.append(np.repeat(coo.row[keep], repeat)) + data_parts.append(np.repeat(coo.data[keep], repeat)) + if not rows_parts: + return sp.csr_matrix((n_targets, n_rows), dtype=np.float64) + return sp.csr_matrix( + (np.concatenate(data_parts), (np.concatenate(rows_parts), np.concatenate(cols_parts))), + shape=(n_targets, n_rows), + ) diff --git a/packages/microcosm-build/tests/engine_free/us/test_bakeoff_us_support_mix_tool.py b/packages/microcosm-build/tests/engine_free/us/test_bakeoff_us_support_mix_tool.py new file mode 100644 index 0000000000..5b534fa0c5 --- /dev/null +++ b/packages/microcosm-build/tests/engine_free/us/test_bakeoff_us_support_mix_tool.py @@ -0,0 +1,345 @@ +"""Bookkeeping in the support-mix bake-off driver (tools/bakeoff_us_support_mix.py). + +Invariants: + +- SPM flag: a household is flagged exactly when one of its SPM units has no + member the pinned engine counts as an adult, and the rule refuses a person + table without household-role columns rather than falling back to age; +- staleness: an arm's receipt depends only on the inputs and options its arm + reads, the concept digest moves with part contents (not just sizes) and + with the concept specs and measure list, a concept part is reusable only if + built from the current shards' source h5, concept specs and null-fill + summary, and saved weights are re-scored only for the same rows and inputs; +- partcheck: a column fails when either side holds a nonfinite value or its + scaled difference exceeds the tolerance, and a check refuses an unknown or + empty part selection, a sample under one household and a negative or + nonfinite tolerance; +- grid: ACS-only arms carry no years, so a grid on newer CPS years keeps them; +- reporting: a report reads only current receipts of its own grid, + replicate tables cover only groups with more than one draw, a report + with missing or stale receipts is refused unless asked for, and + ``--allow-stale`` alone leaves stale receipts out without counting them as + missing. +""" + +from __future__ import annotations + +import argparse +import importlib.util +import json +import pickle +import sys +from types import SimpleNamespace + +import numpy as np +import pandas as pd +import pytest +import scipy.sparse as sp + +from test_support.paths import paths_for + +_TEST_PATHS = paths_for("microcosm-build") + + +@pytest.fixture(scope="module") +def tool(): + path = _TEST_PATHS.repository / "tools" / "bakeoff_us_support_mix.py" + spec = importlib.util.spec_from_file_location("bakeoff_us_support_mix", path) + module = importlib.util.module_from_spec(spec) + assert spec.loader is not None + sys.modules[spec.name] = module + spec.loader.exec_module(module) + return module + + +def _tables(people): + """``people``: (household, spm unit, age, head, spouse) per person.""" + person = pd.DataFrame(people, columns=["person_household_id", "person_spm_unit_id", "age", + "is_household_head", "is_household_spouse"]) + household = pd.DataFrame({"household_id": sorted(set(person["person_household_id"]))}) + return {"household": household, "person": person} + + +def test_spm_flag_marks_units_without_a_classified_adult(tool) -> None: + tables = _tables([ + (1, 10, 40, True, False), # adult + (2, 20, 16, True, False), # 15-17 head counts as an adult + (3, 30, 16, False, False), # 15-17 non-head, no adult in unit + (4, 40, 35, True, False), # household 4: one unit with an adult... + (4, 41, 10, False, False), # ...and one with only a child + (5, 50, 14, True, False), # under 15 never counts, even as head + ]) + flags = tool.spm_zero_adult_households(tables) + assert flags.tolist() == [False, False, True, True, True] + + +def test_spm_flag_refuses_a_table_without_role_columns(tool) -> None: + tables = _tables([(1, 10, 16, True, False)]) + tables["person"] = tables["person"].drop(columns=["is_household_head", "is_household_spouse"]) + with pytest.raises(ValueError, match="neither"): + tool.spm_zero_adult_households(tables) + + +def test_spm_flags_leaves_an_unchanged_row_index_alone(tool, tmp_path) -> None: + tables = _tables([(1, 10, 40, True, False), (2, 20, 16, False, False)]) + shard_dir = tmp_path / "shards" / "acs" + shard_dir.mkdir(parents=True) + with open(shard_dir / "shard_000.pkl", "wb") as handle: + pickle.dump({"tables": tables}, handle) + rows = pd.DataFrame({"household_id": [1, 2], "shard": [0, 0], "group_quarters": [False, True], + "spm_zero_adult_unit": [False, True]}) + rows.to_parquet(tmp_path / "rows_acs.parquet", index=False) + def refuse(*_args, **_kwargs): + raise AssertionError("an unchanged row index was rewritten") + + with pytest.MonkeyPatch.context() as patch: + patch.setattr(pd.DataFrame, "to_parquet", refuse) + tool.do_spm_flags(argparse.Namespace(work=tmp_path)) + receipt = json.loads((tmp_path / "spm_flags.json").read_text()) + assert receipt["spm_zero_adult_households"] == 1 == receipt["spm_zero_adult_in_group_quarters"] + rows.assign(spm_zero_adult_unit=False).to_parquet(tmp_path / "rows_acs.parquet", index=False) + tool.do_spm_flags(argparse.Namespace(work=tmp_path)) + assert pd.read_parquet(tmp_path / "rows_acs.parquet")["spm_zero_adult_unit"].tolist() == [False, True] + + +@pytest.mark.parametrize("newest", [2024, 2025]) +def test_arm_inputs_cover_exactly_what_each_arm_reads(tool, newest) -> None: + for arm in tool.arm_grid(True, newest): + keys = set(tool.arm_input_keys(arm)) + assert {"targets", "truth", "epochs"} <= keys + assert ({"rows_cps", "concepts_cps"} <= keys) == bool(arm.cps_income_years) + assert ({"rows_cps", "concepts_cps"} & keys == set()) == (not arm.cps_income_years) + assert ({"rows_acs", "concepts_acs"} <= keys) == (arm.budget is not None) + assert tool.arm_inputs(dict.fromkeys(keys, "d"), arm)["exclude_gq"] is False + + +def test_acs_only_arms_survive_a_newer_cps_grid(tool) -> None: + assert tool.year_sets(2025) == ((2025,), (2024, 2025), (2023, 2024, 2025)) + old = {a.label for a in tool.arm_grid(True, 2024)} + new = {a.label for a in tool.arm_grid(True, 2025)} + assert len(old) == len(new) == 30 + assert old & new == {label for label in old if ".cps0." in label} + + +def test_inputs_current_compares_only_the_arms_inputs(tool) -> None: + current = {"targets": "t", "truth": "u", "epochs": 1500} + assert tool.inputs_current({**current, "rows_cps": "old"}, current) + assert not tool.inputs_current({**current, "targets": "x"}, current) + assert not tool.inputs_current({"targets": "t", "truth": "u"}, current) + assert not tool.inputs_current(None, current) + # Arm options: a receipt that predates recording them was solved with the default. + assert tool.inputs_current(current, {**current, "exclude_gq": False}) + assert not tool.inputs_current(current, {**current, "exclude_gq": True}) + assert not tool.inputs_current({**current, "exclude_gq": True}, {**current, "exclude_gq": False}) + + +def test_rescore_needs_the_same_rows_and_inputs(tool) -> None: + inputs = {"targets": "t", "epochs": 1500} + previous = {"rows_digest": "r", "inputs": inputs} + assert tool.rescore_refusal(previous, inputs, "r") is None + assert "rows digest" in tool.rescore_refusal({"inputs": inputs}, inputs, "r") + assert "rows digest" in tool.rescore_refusal(previous, inputs, "other") + assert "inputs" in tool.rescore_refusal(previous, {**inputs, "targets": "new"}, "r") + + +def _write_part(directory, name, values, receipt=None, rows=None): + directory.mkdir(parents=True, exist_ok=True) + sp.save_npz(directory / f"{name}.npz", sp.csr_matrix(np.asarray(values, dtype=np.float32))) + if rows is not None: + np.save(directory / f"{name}.rows.npy", np.asarray(rows, dtype=np.int64)) + if receipt is not None: + (directory / f"{name}.json").write_text(json.dumps(receipt)) + + +def test_concept_digest_moves_with_contents_of_the_same_size(tool, tmp_path) -> None: + directory = tmp_path / "concepts" / "acs" + _write_part(directory, "shard_000", [[1.0, 0.0], [0.0, 2.0]], rows=[0, 1]) + first = tool._concept_digest(tmp_path, "acs") + size = (directory / "shard_000.npz").stat().st_size + _write_part(directory, "shard_000", [[3.0, 0.0], [0.0, 4.0]], rows=[0, 1]) + assert (directory / "shard_000.npz").stat().st_size == size + second = tool._concept_digest(tmp_path, "acs") + assert second != first + _write_part(directory, "shard_000", [[3.0, 0.0], [0.0, 4.0]], rows=[1, 0]) + assert tool._concept_digest(tmp_path, "acs") != second + + +def test_concept_digest_moves_with_what_the_columns_mean(tool, tmp_path) -> None: + """A recompile that leaves the parts in place (new report specs, say) + still makes a receipt from before it stale (review r5b, finding 1).""" + args = _report_work(tmp_path) + directory = tmp_path / "concepts" / "acs" + _write_part(directory, "shard_000", [[1.0, 0.0]], rows=[0]) + specs, measures = tmp_path / "concept_specs.pkl", directory / "measures.json" + specs.write_bytes(pickle.dumps([SimpleNamespace(measure="bakeoff_concept_00000")])) + measures.write_text(json.dumps(["bakeoff_concept_00000", "state_income_tax"])) + arm = tool.parse_arm("b300k.cps0.acs100.s0") + + def inputs(): + return tool.arm_inputs(tool.input_digests(tmp_path, args.truth, args.epochs), arm) + + solved = inputs() + assert tool.inputs_current(solved, inputs()) + specs.write_bytes(pickle.dumps([SimpleNamespace(measure="bakeoff_concept_00000", age_limit=17)])) + after_specs = inputs() + assert not tool.inputs_current(solved, after_specs) + measures.write_text(json.dumps(["state_income_tax", "bakeoff_concept_00000"])) + assert not tool.inputs_current(after_specs, inputs()) + + +def test_stale_parts_are_those_not_built_from_the_current_provenance(tool, tmp_path) -> None: + directory = tmp_path / "parts" + current = {"source_h5_sha256": "new", "concept_specs_sha256": "specs", "summary_sha256": None} + _write_part(directory, "shard_000", [[1.0]], receipt=current) + _write_part(directory, "shard_001", [[1.0]], receipt={**current, "source_h5_sha256": "old"}) + _write_part(directory, "shard_002", [[1.0]], receipt={**current, "concept_specs_sha256": "older"}) + _write_part(directory, "shard_003", [[1.0]], receipt={**current, "summary_sha256": "filled"}) + _write_part(directory, "shard_004", [[1.0]], receipt={"source_h5_sha256": "new"}) + _write_part(directory, "shard_005", [[1.0]]) + stale = [p.name for p in tool.stale_concept_parts(directory, current)] + assert stale == [f"shard_00{i}.npz" for i in range(1, 6)] + # The concept store checks the source and specs only. + without_summary = {k: v for k, v in current.items() if k != "summary_sha256"} + assert "shard_003.npz" not in [p.name for p in tool.stale_concept_parts(directory, without_summary)] + + +def _materialize_args(work, replace_stale): + return argparse.Namespace(work=work, source="cps", replace_stale=replace_stale, rank_range=None, + only=None, summary=None, batch=5_000, min_available_gb=0.0) + + +def _materialize_work(tmp_path): + (tmp_path / "concept_specs.pkl").write_bytes(pickle.dumps([])) + (tmp_path / "shards" / "cps").mkdir(parents=True) + (tmp_path / "shards" / "cps" / "shard.json").write_text(json.dumps({"h5_sha256": "new"})) + pd.DataFrame({"shard": pd.Series([], dtype=np.int64)}).to_parquet(tmp_path / "rows_cps.parquet") + return tmp_path / "concepts" / "cps" + + +def test_materialize_refuses_then_replaces_stale_parts(tool, tmp_path) -> None: + concepts = _materialize_work(tmp_path) + current = tool.part_provenance(tmp_path, "cps", None) + _write_part(concepts, "shard_000", [[1.0]], receipt={**current, "source_h5_sha256": "old"}, rows=[0]) + _write_part(concepts, "shard_001", [[1.0]], receipt=current, rows=[1]) + with pytest.raises(SystemExit, match="replace-stale"): + tool.do_materialize(_materialize_args(tmp_path, replace_stale=False)) + assert (concepts / "shard_000.npz").exists() + tool.do_materialize(_materialize_args(tmp_path, replace_stale=True)) + assert not list(concepts.glob("shard_000*")) + assert (concepts / "shard_001.npz").exists() + + +def test_a_recompile_makes_every_part_stale(tool, tmp_path) -> None: + concepts = _materialize_work(tmp_path) + _write_part(concepts, "shard_000", [[1.0]], receipt=tool.part_provenance(tmp_path, "cps", None), rows=[0]) + assert not tool.stale_concept_parts(concepts, tool.part_provenance(tmp_path, "cps", None)) + (tmp_path / "concept_specs.pkl").write_bytes(pickle.dumps([SimpleNamespace(measure="bakeoff_concept_00000")])) + assert tool.stale_concept_parts(concepts, tool.part_provenance(tmp_path, "cps", None)) + with pytest.raises(SystemExit, match="replace-stale"): + tool.do_materialize(_materialize_args(tmp_path, replace_stale=False)) + + +def test_partcheck_fails_nonfinite_and_out_of_tolerance_columns(tool) -> None: + fresh = np.array([[1.0, 2.0, np.nan, np.inf, 1.0, 3.0], + [1.0, 2.0, 1.0, np.inf, 1.0, 3.0]]) + stored = np.array([[1.0, 2.0, np.nan, np.inf, 1.5, 3.0], + [1.0, 2.0 + 1e-9, 1.0, np.inf, 1.0, np.nan]]) + scaled, bad = tool.partcheck_columns(fresh, stored, 1e-5) + assert bad.tolist() == [2, 3, 4, 5] + assert scaled[0] == 0.0 + assert scaled[1] == pytest.approx(5e-10) + assert scaled[4] == pytest.approx(0.5) + + +def test_a_nonfinite_value_fails_its_column_at_any_tolerance(tool) -> None: + """Exhaustive over a 2 x 3 sample: one nonfinite value on either side + fails exactly its own column, whatever the tolerance.""" + base = np.arange(6.0).reshape(2, 3) + assert tool.partcheck_columns(base, base.copy(), 0.0)[1].size == 0 + for side in ("fresh", "stored"): + for row in range(2): + for col in range(3): + for value in (np.nan, np.inf, -np.inf): + for tolerance in (0.0, 1e-5, 1e300): + fresh, stored = base.copy(), base.copy() + (fresh if side == "fresh" else stored)[row, col] = value + assert tool.partcheck_columns(fresh, stored, tolerance)[1].tolist() == [col] + + +def test_partcheck_refuses_unknown_and_empty_part_selections(tool, tmp_path) -> None: + parts = [tmp_path / "shard_000.npz", tmp_path / "shard_001.npz"] + assert tool.select_parts(parts, None) == parts + assert tool.select_parts(parts, " shard_001 ,") == parts[1:] + with pytest.raises(SystemExit, match="shard_007"): + tool.select_parts(parts, "shard_000,shard_007") + with pytest.raises(SystemExit, match="no stored parts"): + tool.select_parts(parts, ",") + with pytest.raises(SystemExit, match="no stored parts"): + tool.select_parts([], None) + + +@pytest.mark.parametrize(("per_part", "tolerance"), [ + (0, 1e-5), (200, -1e-5), (200, float("nan")), (200, float("inf")), +]) +def test_partcheck_refuses_a_bad_sample_size_or_tolerance(tool, tmp_path, per_part, tolerance) -> None: + args = argparse.Namespace(work=tmp_path, source="cps", shards=None, parts=None, per_part=per_part, + tolerance=tolerance, summary=None, batch=5_000, min_available_gb=0.0) + with pytest.raises(SystemExit, match="per-part|tolerance"): + tool.do_partcheck(args) + + +def test_replicate_tables_cover_only_groups_with_several_draws(tool) -> None: + table = pd.DataFrame({ + "product": ["national"] * 5, + "arm": ["b300k.cps2024.acs100.s0", "b300k.cps2024.acs100.s1", "b300k.cps2024.acs100.s2", + "b300k.cps2023-2024.acs100.s0", "b600k.cps2024.acs100.s0"], + "cps_years": [1, 1, 1, 2, 1], "acs_fill_share": [1.0] * 5, "seed": [0, 1, 2, 0, 0], + "x.state": [0.1, 0.2, 0.3, 0.9, 0.9], + }) + spread, mean = tool.replicate_summary(table) + assert list(mean.index) == [("national", 1)] == list(spread.index) + assert mean.loc[("national", 1), "x.state"] == pytest.approx(0.2) + assert spread.loc[("national", 1), "x.state"] == pytest.approx(0.1) + + +def _report_work(tmp_path): + for name in ("targets.parquet", "rows_cps.parquet", "rows_acs.parquet", "truth.parquet"): + pd.DataFrame({"x": [1]}).to_parquet(tmp_path / name) + (tmp_path / "arms" / "national").mkdir(parents=True) + return argparse.Namespace(work=tmp_path, out=tmp_path / "report", newest_year=2024, truth=tmp_path / "truth.parquet", + epochs=1500, allow_missing=False, allow_stale=False) + + +def test_report_refuses_missing_receipts(tool, tmp_path) -> None: + args = _report_work(tmp_path) + with pytest.raises(SystemExit, match="60 expected receipts missing"): + tool.do_report(args) + + +def test_report_skips_other_grids_and_refuses_stale_receipts(tool, tmp_path) -> None: + args = _report_work(tmp_path) + arms = tmp_path / "arms" / "national" + (arms / "b300k.cps2025.acs100.s0.json").write_text(json.dumps( + {"arm": "b300k.cps2025.acs100.s0", "product": "national", "inputs": {}})) + with pytest.raises(SystemExit, match="60 expected receipts missing"): + tool.do_report(args) # the 2025-grid receipt is skipped, not counted or read + (arms / "b300k.cps0.acs100.s0.json").write_text(json.dumps( + {"arm": "b300k.cps0.acs100.s0", "product": "national", "inputs": {"targets": "old"}})) + with pytest.raises(SystemExit, match="1 receipts are stale"): + tool.do_report(args) + + +def test_report_with_allow_stale_alone_leaves_stale_receipts_out(tool, tmp_path) -> None: + """Review r5b, finding 4: ``--allow-stale`` must not also need + ``--allow-missing`` for receipts that exist but are stale.""" + args = _report_work(tmp_path) + (tmp_path / "arms" / "local").mkdir() + for product in ("national", "local"): + for arm in tool.arm_grid(True, 2024): + (tmp_path / "arms" / product / f"{arm.label}.json").write_text(json.dumps( + {"arm": arm.label, "product": product, "inputs": {"targets": "old"}})) + with pytest.raises(SystemExit, match="60 receipts are stale"): + tool.do_report(args) + args.allow_stale = True + tool.do_report(args) + assert (args.out / "arms.csv").exists() diff --git a/packages/microcosm-build/tests/engine_free/us/test_us_spine_blindness.py b/packages/microcosm-build/tests/engine_free/us/test_us_spine_blindness.py index 563fb81701..460dcf90f7 100644 --- a/packages/microcosm-build/tests/engine_free/us/test_us_spine_blindness.py +++ b/packages/microcosm-build/tests/engine_free/us/test_us_spine_blindness.py @@ -419,6 +419,9 @@ # column; the release tool passes the people who may lack a decision. "retired_stored_inputs.py", "stacked_spine.py", # Provenance owner (#578 revision); see owners list. + # Bake-off arm accounting, split mirror and ESS; evaluates support mixes, + # never transforms a population. + "support_mix.py", "support_provenance.py", "take_up.py", "take_up_contract.py", diff --git a/packages/microcosm-build/tests/engine_free/us/test_us_support_mix.py b/packages/microcosm-build/tests/engine_free/us/test_us_support_mix.py new file mode 100644 index 0000000000..67ba6680cd --- /dev/null +++ b/packages/microcosm-build/tests/engine_free/us/test_us_support_mix.py @@ -0,0 +1,294 @@ +"""Properties of the support-mix bake-off primitives. + +Invariants checked for every drawn input: + +- budget accounting: an arm's CPS, ACS and clone source households sum to + its budget, and infeasible arms are refused rather than truncated; +- nesting: a smaller ACS selection is a prefix of a larger one, and the order + depends only on the key set, not its input order; +- clone allocation: copies sum to the requested clones and differ by at most + one across households; +- mass: starting weights are positive, sum to the requested total, give each + CPS income year an equal share, and split CPS and ACS mass in proportion to + source households; a row's copies sum back to its per-year weight; the + weights are linear in the requested total; +- ESS: distinct-unit ESS never exceeds the row ESS or the number of distinct + units, and equals the row ESS when every unit is distinct; +- assembly (differential): the sparse target matrix equals a naive dense + construction, including cells that carry several targets; +- split: the role is a pure function of the group key, district children + share their parent's role, vintage tokens never change a role, and the + hash matches the pending release primitive byte for byte. +""" + +from __future__ import annotations + +import hashlib + +import numpy as np +import pytest + +hypothesis = pytest.importorskip("hypothesis") +from hypothesis import given, settings # noqa: E402 +from hypothesis import strategies as st # noqa: E402 + +from microcosm.build.us_runtime.support_mix import ( # noqa: E402 + TARGET_SPLIT_HOLDOUT_SALT, + TARGET_SPLIT_SEALED_SALT, + ArmCounts, + SupportMixArm, + acs_selection_order, + arm_initial_weights, + assemble_target_matrix, + clone_copies, + distinct_unit_ess, + hash_uniform, + kish_ess, + plan_arm_counts, + target_split_group_key, + target_split_role, +) + +YEARS = {2022: 56_839, 2023: 56_251, 2024: 55_762} + + +def test_hash_uniform_matches_the_release_primitive() -> None: + digest = hashlib.sha256(b"salt\x1fkey").digest() + assert hash_uniform("key", salt="salt") == int.from_bytes(digest[:8], "big") / 2**64 + with pytest.raises(ValueError): + hash_uniform("", salt="salt") + with pytest.raises(ValueError): + hash_uniform("key", salt="") + + +#: (key, salt, draw) computed 2026-09-30 by the holdout port branch's own +#: ``microcosm.build.holdout.hash_holdout_uniform`` (us-target-roles-holdout +#: working copy), so the mirror is checked against that implementation, not +#: only against a re-typed formula. +PORT_BRANCH_FIXTURES = ( + ("irs_soi.congressional_district_2022.all_returns.wv_total.net_capital_gains_returns", + "microcosm.us.target_split.v1.sealed", 0.568527776442365), + ("irs_soi.congressional_district_2022.all_returns.wv_total.net_capital_gains_returns", + "microcosm.us.target_split.v1.holdout", 0.2332024720189108), + ("census_pep.national_resident_population_age.20_to_24.population", + "microcosm.us.target_split.v1.sealed", 0.6698038027150819), + ("census_pep.national_resident_population_age.20_to_24.population", + "microcosm.us.target_split.v1.holdout", 0.888848284264564), + ("k0", "microcosm.us.target_split.v1.sealed", 0.13405297471660024), + ("k0", "microcosm.us.target_split.v1.holdout", 0.994075647032073), + ("usda_snap.state.06.households", "microcosm.us.target_split.v1.sealed", 0.20260546634959004), + ("usda_snap.state.06.households", "microcosm.us.target_split.v1.holdout", 0.9762431428888598), +) + + +@pytest.mark.parametrize(("key", "salt", "draw"), PORT_BRANCH_FIXTURES) +def test_hash_uniform_matches_the_port_branch_fixtures(key: str, salt: str, draw: float) -> None: + assert hash_uniform(key, salt=salt) == draw + + +@given(st.text(min_size=1, max_size=40), st.text(min_size=1, max_size=20)) +def test_hash_uniform_is_a_unit_interval_draw(key: str, salt: str) -> None: + u = hash_uniform(key, salt=salt) + assert 0.0 <= u < 1.0 + assert u == hash_uniform(key, salt=salt) + + +@given( + budget=st.integers(min_value=1, max_value=2_000_000), + years=st.sets(st.sampled_from(sorted(YEARS)), max_size=3), + share=st.floats(min_value=0.0, max_value=1.0), +) +def test_arm_counts_sum_to_the_budget_or_refuse(budget, years, share) -> None: + arm = SupportMixArm(budget=budget, cps_income_years=tuple(years), acs_fill_share=share) + cps = sum(YEARS[year] for year in years) + try: + counts = plan_arm_counts(arm, cps_households_by_year=YEARS, acs_households=1_531_614) + except ValueError: + fill = budget - cps + acs = round(fill * share) if fill >= 0 else 0 + assert fill < 0 or acs > 1_531_614 or (fill - acs > 0 and cps == 0) + return + assert counts.total == budget + assert counts.cps == cps + assert min(counts.acs, counts.clones) >= 0 + + +def test_natural_arm_has_no_fill() -> None: + arm = SupportMixArm(budget=None, cps_income_years=(2024,)) + counts = plan_arm_counts(arm, cps_households_by_year=YEARS, acs_households=10) + assert counts == ArmCounts(cps=55_762, acs=0, clones=0) + assert arm.label == "natural.cps2024.acs100.s0" + + +@given( + keys=st.lists(st.text(min_size=1, max_size=12), min_size=1, max_size=60, unique=True), + data=st.data(), +) +def test_acs_selection_is_nested_and_order_free(keys, data) -> None: + order = acs_selection_order(keys, salt="s") + assert sorted(order.tolist()) == list(range(len(keys))) + small = data.draw(st.integers(min_value=0, max_value=len(keys))) + large = data.draw(st.integers(min_value=small, max_value=len(keys))) + chosen_small = {keys[i] for i in order[:small]} + chosen_large = {keys[i] for i in order[:large]} + assert chosen_small <= chosen_large + shuffled = list(reversed(keys)) + reorder = acs_selection_order(shuffled, salt="s") + assert [shuffled[i] for i in reorder] == [keys[i] for i in order] + + +@given( + keys=st.lists(st.text(min_size=1, max_size=8), min_size=1, max_size=50, unique=True), + n_clones=st.integers(min_value=0, max_value=500), +) +def test_clone_copies_sum_and_balance(keys, n_clones) -> None: + copies = clone_copies(keys, n_clones, salt="c") + assert int(copies.sum()) == n_clones + assert copies.max() - copies.min() <= 1 + + +positive = st.floats(min_value=0.01, max_value=1e4, allow_nan=False) + + +@settings(max_examples=150) +@given( + cps=st.lists(st.tuples(positive, st.sampled_from([2022, 2023, 2024]), st.integers(0, 5)), + min_size=1, max_size=40), + acs=st.lists(positive, min_size=0, max_size=40), + clones=st.integers(min_value=0, max_value=100), + mass=st.floats(min_value=1.0, max_value=1e9), +) +def test_initial_weights_conserve_and_split_mass(cps, acs, clones, mass) -> None: + weights = np.array([w for w, _, _ in cps]) + years = np.array([y for _, y, _ in cps]) + copies = np.array([k for _, _, k in cps]) + acs_w = np.array(acs, dtype=np.float64) + counts = ArmCounts(cps=len(cps), acs=len(acs), clones=clones) + cps_out, acs_out = arm_initial_weights( + cps_design_weights=weights, cps_income_year=years, cps_copies=copies, + acs_design_weights=acs_w, counts=counts, total_mass=mass, + ) + expanded = cps_out * (1 + copies) + assert (cps_out > 0).all() and (acs_out > 0).all() + total = expanded.sum() + acs_out.sum() + assert np.isclose(total, mass, rtol=1e-9) + cps_share = (counts.cps + counts.clones) / counts.total + assert np.isclose(expanded.sum(), cps_share * mass, rtol=1e-9) + per_year = [expanded[years == y].sum() for y in np.unique(years)] + assert np.allclose(per_year, per_year[0], rtol=1e-9) + # A row's copies sum back to its per-year weight, which keeps the + # within-year design-weight shape; ACS rows keep theirs. + for y in np.unique(years): + in_year = years == y + assert np.allclose(expanded[in_year], weights[in_year] * (per_year[0] / weights[in_year].sum()), + rtol=1e-9) + if len(acs): + assert np.allclose(acs_out, acs_w * (acs_out.sum() / acs_w.sum()), rtol=1e-9) + # Linear in the mass, so the driver's population mass repair (a common + # rescale) makes the repaired weights independent of it. + cps_k, acs_k = arm_initial_weights( + cps_design_weights=weights, cps_income_year=years, cps_copies=copies, + acs_design_weights=acs_w, counts=counts, total_mass=2.5 * mass, + ) + assert np.allclose(cps_k, 2.5 * cps_out, rtol=1e-12) and np.allclose(acs_k, 2.5 * acs_out, rtol=1e-12) + + +def test_initial_weights_refuse_bad_inputs() -> None: + counts = ArmCounts(cps=1, acs=1, clones=0) + ok = dict(cps_design_weights=np.array([1.0]), cps_income_year=np.array([2024]), + cps_copies=np.array([0]), acs_design_weights=np.array([1.0]), + counts=counts, total_mass=10.0) + arm_initial_weights(**ok) + for key, value in (("cps_design_weights", np.array([0.0])), + ("acs_design_weights", np.array([np.nan])), + ("total_mass", -1.0), ("cps_copies", np.array([-1]))): + with pytest.raises(ValueError): + arm_initial_weights(**{**ok, key: value}) + + +@given( + rows=st.lists(st.tuples(st.floats(min_value=0.0, max_value=1e6), st.integers(0, 15)), + min_size=1, max_size=80) +) +def test_distinct_unit_ess_bounds(rows) -> None: + w = np.array([r[0] for r in rows]) + units = np.array([r[1] for r in rows]) + if w.sum() == 0: + return + unit_ess = distinct_unit_ess(w, units) + assert unit_ess <= kish_ess(w) * (1 + 1e-9) + assert unit_ess <= len(np.unique(units[w > 0])) * (1 + 1e-9) + assert np.isclose(distinct_unit_ess(w, np.arange(len(w))), kish_ess(w)) + + +def test_group_key_normalization() -> None: + assert target_split_group_key("irs_soi.state.ty2023.agi.06") == "irs_soi.state.agi.06" + assert target_split_group_key("a.month2024_7.b") == "a.b" + # District GEOIDs are 4-digit tokens and survive. + assert target_split_group_key("irs_soi.cd.0601.v2024") == "irs_soi.cd.0601" + assert target_split_group_key( + "x.current_cd.0601.0123456789abcdef" + ) == "x.current_cd.0601" + # A district child takes its state parent's key. + assert target_split_group_key("child.0601", "parent.06.ty2022") == "parent.06" + + +@given(st.lists(st.sampled_from(["ty2021", "cy2024", "v2024", "fy2023", "oep2025"]), max_size=3)) +def test_vintage_tokens_never_change_a_role(vintages) -> None: + base = "irs_soi.state.agi.band3.06" + name = ".".join([*base.split(".")[:2], *vintages, *base.split(".")[2:]]) + assert target_split_group_key(name) == base + assert target_split_role(target_split_group_key(name)) == target_split_role(base) + + +def test_role_rates_are_near_the_declared_fractions() -> None: + roles = [target_split_role(f"k{i}") for i in range(20_000)] + sealed = roles.count("sealed") / len(roles) + holdout = roles.count("holdout") / len(roles) + assert abs(sealed - 0.05) < 0.01 + assert abs(holdout - 0.095) < 0.01 + # Sealed is drawn first on its own salt. + for i in range(200): + key = f"k{i}" + if hash_uniform(key, salt=TARGET_SPLIT_SEALED_SALT) < 0.05: + assert target_split_role(key) == "sealed" + elif hash_uniform(key, salt=TARGET_SPLIT_HOLDOUT_SALT) < 0.10: + assert target_split_role(key) == "holdout" + + +def test_arm_validation() -> None: + with pytest.raises(ValueError): + SupportMixArm(budget=0, cps_income_years=(2024,)) + with pytest.raises(ValueError): + SupportMixArm(budget=10, cps_income_years=(2024, 2024)) + with pytest.raises(ValueError): + SupportMixArm(budget=10, cps_income_years=(2024,), acs_fill_share=1.5) + arm = SupportMixArm(budget=600_000, cps_income_years=(2024, 2022), acs_fill_share=0.5, seed=2) + assert arm.cps_income_years == (2022, 2024) + assert arm.label == "b600k.cps2022-2024.acs050.s2" + + +@settings(max_examples=120, deadline=None) +@given(data=st.data()) +def test_assemble_matches_naive_dense_construction(data) -> None: + import scipy.sparse as sp + + n_rows = data.draw(st.integers(1, 30)) + n_concepts = data.draw(st.integers(1, 6)) + dense = np.array(data.draw(st.lists( + st.lists(st.sampled_from([0.0, 0.0, 1.5, -2.0, 7.0]), min_size=n_concepts, max_size=n_concepts), + min_size=n_rows, max_size=n_rows))) + state = np.array(data.draw(st.lists(st.integers(0, 3), min_size=n_rows, max_size=n_rows))) + cd = np.array(data.draw(st.lists(st.integers(0, 5), min_size=n_rows, max_size=n_rows))) + targets = data.draw(st.lists(st.tuples( + st.integers(0, n_concepts - 1), st.sampled_from(["national", "state", "cd"]), st.integers(0, 5)), + min_size=1, max_size=25)) + concept = np.array([t[0] for t in targets]) + level = [t[1] for t in targets] + geo = np.array([0 if t[1] == "national" else (t[2] % 4 if t[1] == "state" else t[2]) for t in targets]) + got = assemble_target_matrix(sp.csr_matrix(dense), {"state": state, "cd": cd}, concept, level, geo).toarray() + expected = np.zeros((len(targets), n_rows)) + for t, (c, lv, g) in enumerate(zip(concept, level, geo, strict=True)): + member = np.ones(n_rows, bool) if lv == "national" else ((state if lv == "state" else cd) == g) + expected[t] = dense[:, c] * member + np.testing.assert_array_equal(got, expected) diff --git a/tools/bakeoff_us_support_mix.py b/tools/bakeoff_us_support_mix.py new file mode 100644 index 0000000000..118d83c475 --- /dev/null +++ b/tools/bakeoff_us_support_mix.py @@ -0,0 +1,1983 @@ +#!/usr/bin/env python +"""Bake-off: CPS ASEC years vs ACS rows in the US calibration support. + +At fixed source-household budgets, each arm keeps every household of N CPS +income years and fills the rest with ACS households, CPS location clones, or +a mix. Every arm is calibrated with the production solver and scored on +targets it never saw. See docs/us-support-mix-bakeoff.md for the design, +results and caveats. + +The expensive part, running PolicyEngine-US, happens once per household, not +once per arm. ``compile`` groups the pinned target registry into concepts: +a concept is a target with its geography stripped, and every state or +district target is that concept's household value times an indicator of the +household's own state or district (the release materializer builds its +columns exactly this way; ``diffcheck`` verifies it on real rows). +``materialize`` runs the release tool's own ``_materialize_target_frame`` on +household shards for the concept specs. ``arm`` then selects rows, assembles +the sparse target matrix, calls the production ``_optimize`` and scores. + +Subcommands, in order: compile, shard, spm-flags, materialize, diffcheck, +partcheck, truth, arm (or run-grid for every arm), report. Every subcommand writes a JSON +receipt with wall time and peak RSS. +""" + +from __future__ import annotations + +import argparse +import dataclasses +import gc +import hashlib +import importlib.util +import json +import math +import os +import pickle +import resource +import sys +import time +from collections import Counter +from pathlib import Path + +import numpy as np +import pandas as pd +import scipy.sparse as sp + +TOOLS = Path(__file__).resolve().parent +sys.path.insert(0, str(TOOLS)) + +from microcosm.build.us_runtime.support_mix import ( # noqa: E402 + SupportMixArm, + acs_selection_order, + arm_initial_weights, + assemble_target_matrix, + clone_copies, + distinct_unit_ess, + hash_uniform, + kish_ess, + plan_arm_counts, + target_split_group_key, + target_split_role, +) + +PERIOD = 2024 +FEED_SHA256 = "b85437390021777e746f507c5890305496baf5fc7f2c78ba08ddb090f4839801" +ENTITIES = ("person", "household", "tax_unit", "spm_unit", "family", "marital_unit") +GROUP_ID = { + "tax_unit": ("tax_unit_id", "person_tax_unit_id"), + "spm_unit": ("spm_unit_id", "person_spm_unit_id"), + "family": ("family_id", "person_family_id"), + "marital_unit": ("marital_unit_id", "person_marital_unit_id"), +} +ACS_SELECTION_SALT = "microcosm.us.support_mix_bakeoff.v1.acs_order" +CLONE_SALT = "microcosm.us.support_mix_bakeoff.v1.clones" +CLONE_GEO_SALT = "microcosm.us.support_mix_bakeoff.v1.clone_geography" +REPORT_SPECS = { + "report.spm_poor_persons": {"base_variable": "person_in_poverty", "measure_mode": "sum"}, + "report.spm_poor_children": { + "base_variable": "person_in_poverty", + "measure_mode": "sum", + "age_lower_bound": "0", + "age_upper_bound": "18", + }, +} + +# ------------------------------------------------------------------ utilities + + +def log(message: str) -> None: + stamp = time.strftime("%Y-%m-%d %H:%M:%S") + print(f"{stamp} {message}", flush=True) + + +def peak_rss_gb() -> float: + # macOS reports ru_maxrss in bytes; Linux in kilobytes. + raw = resource.getrusage(resource.RUSAGE_SELF).ru_maxrss + return raw / 1e9 if sys.platform == "darwin" else raw * 1024 / 1e9 + + +def sha256_file(path: Path) -> str: + digest = hashlib.sha256() + with open(path, "rb") as handle: + for block in iter(lambda: handle.read(1 << 22), b""): + digest.update(block) + return digest.hexdigest() + + +def write_json(path: Path, payload: object) -> None: + path.parent.mkdir(parents=True, exist_ok=True) + tmp = path.with_suffix(f"{path.suffix}.{os.getpid()}.tmp") + tmp.write_text(json.dumps(payload, indent=1, sort_keys=True, default=str)) + tmp.replace(path) + + +#: Touch this file to pause every bake-off loop between units of work (a shard +#: or an arm) — e.g. while a release stage needs the machine's memory. +PAUSE_FILE = Path("/Users/maxghenis/PolicyEngine/_bakeoff-support-mix/PAUSE") + + +def wait_while_paused() -> None: + while PAUSE_FILE.exists(): + log(f"paused: {PAUSE_FILE} exists") + time.sleep(120) + + +def wait_for_memory(min_available_gb: float) -> None: + """Block until the host has ``min_available_gb`` free (a shared laptop).""" + import psutil + + wait_while_paused() + while psutil.virtual_memory().available / 2**30 < min_available_gb: + log( + f"waiting for memory: {psutil.virtual_memory().available / 2**30:.1f} GiB " + f"available < {min_available_gb} GiB" + ) + time.sleep(120) + + +def release_tool(): + name = "build_us_fiscal_refresh_release" + if name in sys.modules: + return sys.modules[name] + spec = importlib.util.spec_from_file_location(name, TOOLS / f"{name}.py") + module = importlib.util.module_from_spec(spec) + sys.modules[name] = module + spec.loader.exec_module(module) + return module + + +def acs_local_tool(): + name = "build_us_acs_local_release" + if name in sys.modules: + return sys.modules[name] + spec = importlib.util.spec_from_file_location(name, TOOLS / f"{name}.py") + module = importlib.util.module_from_spec(spec) + sys.modules[name] = module + spec.loader.exec_module(module) + return module + + +# ------------------------------------------------------------------ compile + +INCOME_SOURCES = { + "adjusted_gross_income", "employment_income", "self_employment_income", + "capital_gains", "capital_gains_gross", "capital_gains_losses", + "qualified_dividend_income", "ordinary_dividends", "taxable_interest_income", + "tax_exempt_interest_income", "rent_and_royalty_net_income", + "rent_and_royalty_net_losses", "partnership_s_corp_income", + "partnership_s_corp_losses", "estate_income", "estate_losses", + "taxable_pension_income", "total_pension_income", "taxable_ira_distributions", + "taxable_social_security", "total_social_security", "unemployment_compensation", + "business_net_profits", "business_net_losses", "non_sch_d_capital_gains", + "count", +} + + +def dimension_of(family: str, metadata: dict) -> tuple[str, str]: + """(dimension group, dimension) for one registry target.""" + if family in {"usda_snap", "cms_medicaid", "cms_aca", "ssa", "hhs_acf_tanf", + "hhs_acf_liheap", "cms_medicare"}: + return "cps_native", "program_receipt" + if family in {"state_income_tax", "jct"}: + return "cps_native", "tax_items" + if family == "census_population": + return "acs_native", "demographics_pep" + if family in {"bea", "cbo"}: + return "cps_native", "income_components" + if family == "federal_reserve": + return "other", "wealth" + if family == "irs_soi": + source = metadata.get("source_variable", metadata.get("variable", "")) + role = metadata.get("target_role", "") + if source in INCOME_SOURCES and "aca" not in role: + return "cps_native", "income_components" + return "cps_native", "tax_items" + return "other", family + + +def _concept_key(tool, spec) -> tuple[tuple, list[str]]: + """Geography-free value key of one spec, from the release tool's helpers.""" + + def bound(value): + v = tool._as_bound(str(value)) + return "inf" if v == math.inf else ("-inf" if v == -math.inf else repr(float(v))) + + def filing(name): + status = tool.FILING_STATUS_MAP[name] + if status is None: + return "ALL" + return status if isinstance(status, str) else "|".join(sorted(status)) + + def child(filter_): + if filter_ is None: + return None + mask = tool._eitc_child_count_mask(np.arange(0, 6, dtype=float), filter_) + return "".join("1" if x else "0" for x in mask) + + m = spec.metadata + notes: list[str] = [] + if spec.family == "jct": + return ("jct",), ["excluded:reform_simulation"] + if spec.family == "state_income_tax": + return ("state_income_tax",), notes + materializer = m.get("materializer") + if spec.family == "irs_soi": + source = m.get("source_variable", m.get("variable")) + if tool._unsupported_soi_ledger_filters(m): + notes.append("excluded:unsupported_soi_filter") + mode = "count" if source == "count" else ( + "indicator" if m.get("measure_mode") == "indicator_sum" else "amount" + ) + key = ("irs_soi", source, mode, bound(m["agi_lower_bound"]), + bound(m["agi_upper_bound"]), filing(m["filing_status"]), + child(tool._soi_eitc_child_count_filter(m)), + bool(tool._soi_requires_positive_eitc_filter(m)), + m.get("itemized_only") == "true", m.get("taxable_only") == "true") + return key, notes + if materializer == "population_age": + return ("population_age", bound(m.get("age_lower_bound", "-inf")), + bound(m.get("age_upper_bound", "inf"))), notes + if materializer == "policyengine_variable": + base = tool._base_variables_from_metadata(m) + less_than = tool._less_than_from_metadata(m) + mode = m.get("measure_mode", "sum") + low, high = m.get("age_lower_bound"), m.get("age_upper_bound") + if low is not None or high is not None: + if m.get("state_fips") or m.get("congressional_district_geoid"): + notes.append("age_banded_geographic_spec") + return ("pe_var_age", base, mode, bound(low if low is not None else "-inf"), + bound(high if high is not None else "inf")), notes + return ("pe_var", base, mode, m.get("indicator_map_to"), + m.get("indicator_filter_variable"), + None if less_than is None else repr(less_than)), notes + return ("direct", spec.measure), ["direct_measure"] + + +def do_compile(args) -> None: + started = time.time() + tool = release_tool() + from microcosm.build.ledger_artifact import load_ledger_consumer_artifact + from microcosm.build.us_runtime import ( + apply_us_medicaid_enrollment_substitutions, + compile_us_fiscal_target_registry, + default_congressional_district_vintage_crosswalk_path, + load_congressional_district_vintage_crosswalk, + ) + from microcosm.calibrate.registry import TargetSpec + + feed_sha = sha256_file(args.feed) + if feed_sha != FEED_SHA256: + raise SystemExit(f"feed sha256 {feed_sha} != pinned {FEED_SHA256}") + artifact = load_ledger_consumer_artifact(args.feed) + registry = compile_us_fiscal_target_registry( + artifact.facts, + target_period=PERIOD, + congressional_district_vintage_crosswalk=load_congressional_district_vintage_crosswalk( + default_congressional_district_vintage_crosswalk_path() + ), + age_targets=True, + ) + registry, substitutions = apply_us_medicaid_enrollment_substitutions(registry) + specs = tuple(registry.specs) + national_state, surface_receipt = tool._select_target_surface( + specs, tool.TARGET_SURFACE_NATIONAL_STATE + ) + national_state_names = {spec.name for spec in national_state} + loss_weights = np.asarray(tool._fiscal_target_loss_weights(registry), dtype=np.float64) + # The release computes weights on the surface it calibrates, so the + # national product gets its own vector over the national_state specs. + from types import SimpleNamespace + + national_state_weights = dict(zip( + (spec.name for spec in national_state), + np.asarray(tool._fiscal_target_loss_weights(SimpleNamespace(specs=tuple(national_state))), dtype=np.float64), + strict=True, + )) + + concept_ids: dict[tuple, int] = {} + concept_specs = [] + rows = [] + for index, spec in enumerate(specs): + key, notes = _concept_key(tool, spec) + excluded = next((n for n in notes if n.startswith("excluded:")), None) + m = dict(spec.metadata) + concept_id = -1 + measure = None + if key == ("state_income_tax",): + measure = "state_income_tax" + elif excluded is None: + if key not in concept_ids: + concept_ids[key] = len(concept_ids) + cid = concept_ids[key] + stripped = { + k: v for k, v in m.items() + if k not in {"state_fips", "congressional_district_geoid", + "hierarchy_parent_target_name"} + } + stripped["ledger_geography_level"] = "country" + stripped["ledger_geography_id"] = "US" + concept_measure = ( + spec.measure if key[0] == "direct" else f"bakeoff_concept_{cid:05d}" + ) + concept_specs.append( + dataclasses.replace( + spec, + name=f"bakeoff.concept.{cid:05d}", + measure=concept_measure, + metadata=stripped, + hierarchy=None, + ) + ) + concept_id = concept_ids[key] + measure = concept_specs[concept_id].measure + level = m.get("ledger_geography_level", "") + group, dimension = dimension_of(spec.family, m) + group_key = target_split_group_key(spec.name, m.get("hierarchy_parent_target_name")) + rows.append({ + "target_index": index, + "name": spec.name, + "period": str(spec.period), + "family": spec.family, + "level": {"country": "national", "congressional_district": "cd"}.get(level, level), + "state_fips": int(m["state_fips"]) if m.get("state_fips") else -1, + "cd_geoid": int(m["congressional_district_geoid"]) if m.get("congressional_district_geoid") else -1, + "value": float(spec.value), + "measure": measure, + "concept_id": concept_id, + "concept_key": json.dumps(key, default=str), + "excluded": excluded, + "notes": ";".join(n for n in notes if not n.startswith("excluded:")), + "in_national_state": spec.name in national_state_names, + "loss_weight": float(loss_weights[index]), + "loss_weight_national_state": float(national_state_weights.get(spec.name, np.nan)), + "group_key": group_key, + "role": target_split_role(group_key), + "dimension_group": group, + "dimension": dimension, + "value_basis": tool._fiscal_target_value_basis(spec), + }) + for name, metadata in REPORT_SPECS.items(): + concept_specs.append( + TargetSpec( + name=f"bakeoff.{name}", + entity="household", + value=1.0, + measure=f"bakeoff_{name.replace('.', '_')}", + source="support-mix bake-off report-only measure (never calibrated)", + family="bakeoff_report", + metadata={"materializer": "policyengine_variable", **metadata}, + ) + ) + targets = pd.DataFrame(rows) + args.out.mkdir(parents=True, exist_ok=True) + targets.to_parquet(args.out / "targets.parquet", index=False) + with open(args.out / "concept_specs.pkl", "wb") as handle: + pickle.dump(tuple(concept_specs), handle) + receipt = { + "feed": str(args.feed), + "feed_sha256": feed_sha, + "registry_version": registry.version, + "n_specs": len(specs), + "n_concepts": len(concept_ids), + "n_report_concepts": len(REPORT_SPECS), + "medicaid_substitutions": len(substitutions), + "national_state_surface": surface_receipt, + "excluded": dict(Counter(r["excluded"] for r in rows if r["excluded"])), + "notes": dict(Counter(n for r in rows for n in r["notes"].split(";") if n)), + "roles": dict(Counter(r["role"] for r in rows)), + "roles_by_level": { + level: dict(Counter(r["role"] for r in rows if r["level"] == level)) + for level in sorted({r["level"] for r in rows}) + }, + "dimension_counts": dict(Counter(f"{r['dimension_group']}/{r['dimension']}/{r['level']}" for r in rows)), + "split_note": ( + "Mirrors the unmerged us-target-roles-holdout split (salts, \\x1f " + "hash, group keys) without its pins; see support_mix.py." + ), + "wall_s": round(time.time() - started, 1), + "peak_rss_gb": round(peak_rss_gb(), 2), + } + write_json(args.out / "compile.json", receipt) + log(json.dumps({k: receipt[k] for k in ("n_specs", "n_concepts", "roles", "excluded")})) + + +# ------------------------------------------------------------------ shard + + +class _FixedStore: + """Row-sliced reads of a pandas ``fixed``-format HDF5 frame store.""" + + def __init__(self, path: Path): + import h5py + import tables + + self.h5 = h5py.File(path, "r") + self.tb = tables.open_file(str(path), mode="r") + self.layout = {} + for entity in ENTITIES: + group = self.h5[entity] + blocks, i = [], 0 + while f"block{i}_items" in group: + items = [x.decode() for x in group[f"block{i}_items"][()]] + blocks.append((i, items, str(group[f"block{i}_values"].dtype))) + i += 1 + self.layout[entity] = { + "nrows": int(group["axis1"].shape[0]), + "blocks": blocks, + "columns": [item for _, items, _ in blocks for item in items], + } + self._objects: dict[tuple[str, int], np.ndarray] = {} + + def rows(self, entity: str) -> int: + return self.layout[entity]["nrows"] + + def read(self, entity: str, start: int, stop: int, columns=None) -> pd.DataFrame: + columns = self.layout[entity]["columns"] if columns is None else list(columns) + out = {} + group = self.h5[entity] + for i, items, dtype in self.layout[entity]["blocks"]: + wanted = [(j, c) for j, c in enumerate(items) if c in columns] + if not wanted: + continue + if dtype == "object": + key = (entity, i) + if key not in self._objects: + node = self.tb.get_node(f"/{entity}/block{i}_values") + array = np.asarray(node[0], dtype=object) + self._objects[key] = array.reshape(1, -1) if array.ndim == 1 else array.T + block = self._objects[key] + for j, c in wanted: + out[c] = block[j, start:stop] + else: + values = group[f"block{i}_values"][start:stop, :] + for j, c in wanted: + out[c] = values[:, j] + return pd.DataFrame({c: out[c] for c in columns}) + + def read_positions(self, entity: str, positions: np.ndarray) -> pd.DataFrame: + positions = np.asarray(positions, dtype=np.int64) + if not len(positions): + return self.read(entity, 0, 0) + low, high = int(positions.min()), int(positions.max()) + 1 + if high - low > 4 * len(positions) + 10_000: + raise RuntimeError( + f"{entity}: rows for a shard span {high - low:,} for {len(positions):,} rows; " + "the store is not in household order." + ) + frame = self.read(entity, low, high) + return frame.iloc[positions - low].reset_index(drop=True) + + +def _write_shard(path: Path, tables: dict[str, pd.DataFrame], weights: np.ndarray) -> None: + path.parent.mkdir(parents=True, exist_ok=True) + tmp = path.with_suffix(".tmp") + with open(tmp, "wb") as handle: + pickle.dump({"tables": tables, "household_weight": weights}, handle, protocol=5) + tmp.replace(path) + + +def spm_zero_adult_households(tables: dict[str, pd.DataFrame]) -> np.ndarray: + """Households with an SPM unit the pinned engine has no adult for. + + spm_calculator's policyengine adapter counts a member as an adult when + ``age >= 18`` or ``age >= 15`` with ``is_spm_independent_minor_role``, + whose formula is ``is_household_head | is_household_spouse``; a unit with + no such member raises ``SPMInputError``. Returns one flag per household + row, in household-table order. + """ + hh, person = tables["household"], tables["person"] + age = pd.to_numeric(person["age"], errors="coerce").fillna(0).to_numpy() + # Either role column alone still classifies its members; with neither, + # 15-17-year-old heads and spouses would silently count as minors. + role_columns = [c for c in ("is_household_head", "is_household_spouse") if c in person] + if not role_columns: + raise ValueError("person table has neither is_household_head nor is_household_spouse") + role = np.zeros(len(person), dtype=bool) + for column in role_columns: + role |= pd.Series(person[column]).fillna(False).astype(bool).to_numpy() + adult = (age >= 18) | ((age >= 15) & role) + unit_adults = pd.Series(adult).groupby(person["person_spm_unit_id"].to_numpy()).sum() + empty_units = unit_adults.index[unit_adults.to_numpy() == 0] + flagged = person.loc[person["person_spm_unit_id"].isin(empty_units), "person_household_id"] + return np.isin(hh["household_id"].to_numpy(), flagged.to_numpy()) + + +def _row_index_columns(tables: dict[str, pd.DataFrame], source: str) -> pd.DataFrame: + """Per-household identity, geography and ACS-native evaluation columns.""" + hh = tables["household"] + person = tables["person"] + positions = pd.Series(np.arange(len(hh)), index=hh["household_id"].to_numpy()) + person_position = positions.reindex(person["person_household_id"].to_numpy()).to_numpy() + n = len(hh) + + def per_household(values) -> np.ndarray: + return np.bincount(person_position, weights=np.asarray(values, dtype=np.float64), minlength=n) + + age = pd.to_numeric(person["age"], errors="coerce").fillna(0).to_numpy() + male = ~pd.to_numeric(person["is_female"]).fillna(0).astype(bool).to_numpy() + rent = pd.to_numeric(person.get("pre_subsidy_rent", 0.0), errors="coerce").fillna(0.0) + taxes = pd.to_numeric(person.get("real_estate_taxes", 0.0), errors="coerce").fillna(0.0) + tenure = hh["tenure_type"].astype(str).to_numpy() + out = pd.DataFrame({ + "household_id": hh["household_id"].to_numpy(), + "state_fips": pd.to_numeric(hh["state_fips"]).to_numpy().astype(np.int64), + "cd_geoid": pd.to_numeric(hh["congressional_district_geoid"]).to_numpy().astype(np.int64), + "county_fips": pd.to_numeric(hh["county_fips"]).to_numpy().astype(np.int64), + "persons": per_household(np.ones(len(person))), + "persons_0_17": per_household(age < 18), + "persons_18_64": per_household((age >= 18) & (age < 65)), + "persons_65p": per_household(age >= 65), + "persons_male": per_household(male), + "rent_annual": per_household(rent), + "real_estate_taxes": per_household(taxes), + "owner": np.isin(tenure, ["OWNED_WITH_MORTGAGE", "OWNED_OUTRIGHT"]).astype(np.float64), + "renter": (tenure == "RENTED").astype(np.float64), + }) + if source == "cps": + peridnum = person["PERIDNUM"].astype(str).str[:20].to_numpy() + if (pd.Series(peridnum).groupby(person_position).nunique() != 1).any(): + raise RuntimeError("persons of one CPS household disagree on PERIDNUM[:20] (H_IDNUM)") + first = pd.Series(peridnum).groupby(person_position).first() + out["unit_key"] = "cps:" + first.reindex(np.arange(n)).to_numpy().astype(str) + year = pd.Series(pd.to_numeric(person["source_year"]).to_numpy()).groupby(person_position).first() + out["income_year"] = year.reindex(np.arange(n)).to_numpy().astype(np.int64) + out["source_key"] = out["income_year"].astype(str) + "|" + out["unit_key"] + out["channel"] = hh["household_support_channel"].astype(str).to_numpy() + out["clone_index"] = pd.to_numeric(hh["household_support_clone_index"]).to_numpy() + out["group_quarters"] = False + else: + out["unit_key"] = "acs:" + hh["SERIALNO"].astype(str).to_numpy() + out["income_year"] = -1 + out["source_key"] = out["unit_key"] + out["channel"] = "acs" + out["clone_index"] = 0 + out["group_quarters"] = pd.to_numeric(hh["TYPEHUGQ"], errors="coerce").fillna(1).to_numpy() != 1 + out["spm_zero_adult_unit"] = spm_zero_adult_households(tables) + return out + + +def do_shard(args) -> None: + started = time.time() + out_dir = args.out / "shards" / args.source + out_dir.mkdir(parents=True, exist_ok=True) + index_parts = [] + if args.source == "cps": + from microcosm.build.us_runtime.h5_io import read_frame_table + + with pd.HDFStore(args.h5, mode="r") as store: + tables = {entity: read_frame_table(store, entity) for entity in ENTITIES} + with pd.HDFStore(args.design_h5, mode="r") as store: + design = store.select("household", columns=["household_id", "household_weight"]) + if not np.array_equal(design["household_id"].to_numpy(), tables["household"]["household_id"].to_numpy()): + raise SystemExit("design-weight base and CPS export disagree on household ids/order") + tables["household"] = tables["household"].drop(columns=["household_weight"]) + weights_all = design["household_weight"].to_numpy(np.float64) + households = tables["household"] + person_household = tables["person"]["person_household_id"].to_numpy() + position = pd.Series(np.arange(len(households)), index=households["household_id"].to_numpy()) + person_position = position.reindex(person_household).to_numpy() + n = len(households) + for shard, low in enumerate(range(0, n, args.households_per_shard)): + high = min(low + args.households_per_shard, n) + person_mask = (person_position >= low) & (person_position < high) + part = {"household": households.iloc[low:high].reset_index(drop=True), + "person": tables["person"].loc[person_mask].reset_index(drop=True)} + for entity, (id_col, person_col) in GROUP_ID.items(): + ids = np.unique(part["person"][person_col].to_numpy()) + table = tables[entity] + part[entity] = table.loc[table[id_col].isin(ids)].reset_index(drop=True) + weights = weights_all[low:high] + _write_shard(out_dir / f"shard_{shard:03d}.pkl", part, weights) + index = _row_index_columns(part, "cps") + index["design_weight"] = weights + index["shard"] = shard + index["position"] = np.arange(high - low) + index_parts.append(index) + log(f"cps shard {shard}: {high - low} households") + else: + store = _FixedStore(args.h5) + hh_ids = store.read("household", 0, store.rows("household"), ["household_id", "household_spine"]) + acs_positions = np.flatnonzero(hh_ids["household_spine"].astype(str).to_numpy() == "acs_2024_1yr") + if not len(acs_positions) or not np.array_equal( + acs_positions, np.arange(acs_positions[0], acs_positions[-1] + 1) + ): + raise SystemExit("ACS spine rows are not one contiguous household range") + household_position = pd.Series(np.arange(len(hh_ids)), index=hh_ids["household_id"].to_numpy()) + person_ids = store.read("person", 0, store.rows("person"), + ["person_household_id", *[c for _, c in GROUP_ID.values()]]) + person_position = household_position.reindex(person_ids["person_household_id"].to_numpy()).to_numpy() + group_positions = {} + for entity, (id_col, _) in GROUP_ID.items(): + ids = store.read(entity, 0, store.rows(entity), [id_col])[id_col].to_numpy() + group_positions[entity] = pd.Series(np.arange(len(ids)), index=ids) + first, last = int(acs_positions[0]), int(acs_positions[-1]) + 1 + for shard, low in enumerate(range(first, last, args.households_per_shard)): + high = min(low + args.households_per_shard, last) + wait_for_memory(args.min_available_gb) + persons = np.flatnonzero((person_position >= low) & (person_position < high)) + part = {"household": store.read("household", low, high), + "person": store.read_positions("person", persons)} + for entity, (_id_col, person_col) in GROUP_ID.items(): + ids = np.unique(person_ids[person_col].to_numpy()[persons]) + rows = np.sort(group_positions[entity].reindex(ids).to_numpy().astype(np.int64)) + part[entity] = store.read_positions(entity, rows) + weights = part["household"].pop("household_weight").to_numpy(np.float64) + _write_shard(out_dir / f"shard_{shard:03d}.pkl", part, weights) + index = _row_index_columns(part, "acs") + index["design_weight"] = weights + index["shard"] = shard + index["position"] = np.arange(high - low) + index_parts.append(index) + log(f"acs shard {shard}: {high - low} households, peak {peak_rss_gb():.1f} GB") + del part + gc.collect() + index = pd.concat(index_parts, ignore_index=True) + index["source"] = args.source + index.to_parquet(args.out / f"rows_{args.source}.parquet", index=False) + write_json(out_dir / "shard.json", { + "source": args.source, "h5": str(args.h5), "h5_sha256": sha256_file(args.h5), + "design_h5": str(args.design_h5) if args.design_h5 else None, + "shards": len(index_parts), "households": len(index), + "group_quarters_households": int(index["group_quarters"].sum()), + "spm_zero_adult_households": int(index.get("spm_zero_adult_unit", pd.Series(dtype=bool)).sum()), + "spm_zero_adult_in_group_quarters": int( + (index.get("spm_zero_adult_unit", False) & index["group_quarters"]).sum() + ), + "wall_s": round(time.time() - started, 1), "peak_rss_gb": round(peak_rss_gb(), 2), + }) + + +def do_spm_flags(args) -> None: + """Recompute the SPM zero-adult flag on existing ACS shards (receipt).""" + rows = pd.read_parquet(args.work / "rows_acs.parquet") + flag = np.zeros(len(rows), dtype=bool) + for shard in sorted(rows["shard"].unique()): + with open(args.work / "shards" / "acs" / f"shard_{shard:03d}.pkl", "rb") as handle: + tables = pickle.load(handle)["tables"] + index = np.flatnonzero(rows["shard"].to_numpy() == shard) + if not np.array_equal(rows["household_id"].to_numpy()[index], tables["household"]["household_id"].to_numpy()): + raise SystemExit(f"shard {shard}: row index and shard disagree on household order") + flag[index] = spm_zero_adult_households(tables) + # Rewriting the row index changes its digest and so every arm's inputs; + # write only when the flag changed. + if "spm_zero_adult_unit" in rows and np.array_equal(rows["spm_zero_adult_unit"].to_numpy(bool), flag): + log("spm flags unchanged; row index left as is") + else: + rows["spm_zero_adult_unit"] = flag + rows.to_parquet(args.work / "rows_acs.parquet", index=False) + gq = rows["group_quarters"].to_numpy() + write_json(args.work / "spm_flags.json", { + "acs_households": int(len(rows)), + "group_quarters_households": int(gq.sum()), + "group_quarters_share": float(gq.mean()), + "spm_zero_adult_households": int(flag.sum()), + "spm_zero_adult_share": float(flag.mean()), + "spm_zero_adult_in_group_quarters": int((flag & gq).sum()), + "rule": "age >= 18 or (age >= 15 and (is_household_head or is_household_spouse)), per SPM unit", + }) + log(f"spm flags: {int(flag.sum())} households ({int((flag & gq).sum())} in group quarters)") + + +# ------------------------------------------------------------------ materialize + + +def _load_shard_frame(path: Path): + from microcosm.build.serialization_dtypes import canonicalize_frame_string_dtypes + from microcosm.frame import Frame, WeightKind, Weights + from microcosm.frame.units import US_SCHEMA + + with open(path, "rb") as handle: + payload = pickle.load(handle) + frame = Frame( + payload["tables"], + US_SCHEMA, + {"household": Weights(np.asarray(payload["household_weight"]), WeightKind.CALIBRATED)}, + ) + return canonicalize_frame_string_dtypes(frame, boundary="support-mix shard load", in_place=True) + + +#: Engine inputs the Sep-23 ACS staging carries as all-null on ACS rows and +#: its reviewed-null register predates. ``is_spm_independent_minor_role`` has +#: a formula (``is_household_head | is_household_spouse``, spm_calculator's +#: policyengine adapter); a column that is entirely null is dropped so the +#: engine derives the role from household structure, as it did for the +#: production ACS local release, whose staging had no such column. A +#: partially null column is an error. Counted in every receipt. +FORMULA_DERIVED_WHEN_ALL_NULL = (("person", "is_spm_independent_minor_role"),) + + +def _drop_all_null_formula_inputs(frame): + from microcosm.frame import Frame + + dropped = {} + tables = {entity: frame.table(entity) for entity in frame.entities} + for entity, column in FORMULA_DERIVED_WHEN_ALL_NULL: + table = tables[entity] + if column not in table.columns: + continue + missing = table[column].isna() + if missing.all(): + tables[entity] = table.drop(columns=[column]) + dropped[f"{entity}.{column}"] = int(missing.sum()) + elif missing.any(): + raise RuntimeError(f"{entity}.{column} is partially null ({int(missing.sum())} rows)") + if not dropped: + return frame, dropped + weights = {entity: frame.weights_for(entity) for entity in frame.weighted_entities} + return Frame(tables, frame.schema, weights, frame.strata, mass_log=frame.mass_log), dropped + + +def _materialize_frame(frame, concept_specs, *, summary_path: Path | None, batch: int): + tool = release_tool() + acs = acs_local_tool() + projected, dropped = acs.project_input_only(frame, period=PERIOD) + projected, formula_derived = _drop_all_null_formula_inputs(projected) + if summary_path is not None: + acs.fill_reviewed_nulls(projected, summary_path, period=PERIOD) + target_frame, registry, compilation = tool._materialize_target_frame( + projected, + tuple(concept_specs), + maximum_microsim_batch_size=batch, + refuse_population_aggregates=True, + ) + household = target_frame.table("household") + compilation = {**compilation, "formula_derived_inputs": formula_derived} + return household, [spec.measure for spec in registry.specs], compilation, dropped + + +def input_digests(work: Path, truth: Path, epochs: int) -> dict: + """Digests of every input an arm receipt can depend on.""" + return { + "targets": sha256_file(work / "targets.parquet"), + "rows_cps": sha256_file(work / "rows_cps.parquet"), + "rows_acs": sha256_file(work / "rows_acs.parquet"), + "truth": sha256_file(truth), + "concepts_cps": _concept_digest(work, "cps"), + "concepts_acs": _concept_digest(work, "acs"), + "epochs": int(epochs), + } + + +def arm_input_keys(arm: SupportMixArm) -> tuple[str, ...]: + """The inputs an arm's result depends on. + + An arm without CPS years reads the CPS row index only for the starting + mass, which the population mass repair rescales away (the starting + weights are linear in it), and for validations that raise rather than + change results; an arm without a budget has no ACS fill and no clones + (clones draw geography from ACS rows). + """ + keys = ["targets", "truth", "epochs"] + if arm.cps_income_years: + keys += ["rows_cps", "concepts_cps"] + if arm.budget is not None: + keys += ["rows_acs", "concepts_acs"] + return tuple(keys) + + +#: Arm options that change results, with the value a receipt that does not +#: record them was solved under. +ARM_OPTION_DEFAULTS = {"exclude_gq": False} + + +def arm_inputs(digests: dict, arm: SupportMixArm, *, exclude_gq: bool = False) -> dict: + return {**{key: digests[key] for key in arm_input_keys(arm)}, "exclude_gq": bool(exclude_gq)} + + +def inputs_current(previous: dict | None, current: dict) -> bool: + """A receipt is current when every input its arm depends on is unchanged.""" + return isinstance(previous, dict) and all( + previous.get(k, ARM_OPTION_DEFAULTS.get(k)) == v for k, v in current.items() + ) + + +def rescore_refusal(previous: dict, inputs: dict, rows_digest: str) -> str | None: + """Why saved weights may not be re-scored, or ``None`` when they may. + + Re-scoring is for a scoring change only: the weights must come from the + same rows and the same targets, split, truth, concepts and epochs. + """ + if previous.get("rows_digest") != rows_digest: + return "the receipt has no rows digest or a different one" + if not inputs_current(previous.get("inputs"), inputs): + return "the arm's inputs changed since the solve" + return None + + +def _concept_digest(work: Path, source: str) -> str: + """Content digest of a source's materialized parts (values and row maps) + and of what their columns mean: the compiled concept specs and the + source's ``measures.json``. A recompile that leaves the parts in place, + such as one that changes only the report specs, still moves the digest, + so no receipt reads as current against columns that changed meaning. + """ + digest = hashlib.sha256() + for meaning in (work / "concept_specs.pkl", work / "concepts" / source / "measures.json"): + digest.update(meaning.name.encode()) + digest.update((sha256_file(meaning) if meaning.exists() else "absent").encode()) + for path in sorted((work / "concepts" / source).glob("shard_*.npz")): + if path.name.endswith(".tmp.npz"): + continue + digest.update(path.name.encode()) + digest.update(sha256_file(path).encode()) + rows_path = path.with_suffix(".rows.npy") + if rows_path.exists(): + digest.update(sha256_file(rows_path).encode()) + return digest.hexdigest() + + +def shard_source_sha(work: Path, source: str) -> str: + """The sha256 of the h5 the source's shards were cut from (``shard.json``).""" + return json.loads((work / "shards" / source / "shard.json").read_text())["h5_sha256"] + + +def part_provenance(work: Path, source: str, summary: Path | None = None, *, with_summary: bool = True) -> dict: + """What a materialized part's values depend on besides its rows. + + The source h5 fixes the households, the compiled concept specs fix what + each column means (``measures.json`` names are positional), and the + reviewed-null summary fixes how null inputs were filled. + """ + provenance = { + "source_h5_sha256": shard_source_sha(work, source), + "concept_specs_sha256": sha256_file(work / "concept_specs.pkl"), + } + if with_summary: + provenance["summary_sha256"] = sha256_file(summary) if summary else None + return provenance + + +def stale_concept_parts(directory: Path, expected: dict) -> list[Path]: + """Materialized parts whose receipt does not match ``expected`` provenance. + + A part with no receipt, a different source h5, different concept specs + or a different null-fill summary may hold values for other households or + under other column meanings. + """ + stale = [] + for path in sorted(directory.glob("shard_*.npz")): + if path.name.endswith(".tmp.npz"): + continue + receipt = path.with_suffix(".json") + recorded = json.loads(receipt.read_text()) if receipt.exists() else {} + if any(recorded.get(key, "missing") != value for key, value in expected.items()): + stale.append(path) + return stale + + +def acs_rank(work: Path) -> np.ndarray: + """Each ACS row's position in the fixed salted selection order (cached, + keyed by a digest of the row index's unit-key sequence).""" + rows = pd.read_parquet(work / "rows_acs.parquet", columns=["unit_key"]) + digest = hashlib.sha256("\n".join(rows["unit_key"]).encode()).hexdigest() + path, key = work / "acs_rank.npy", work / "acs_rank.key" + if path.exists() and key.exists() and key.read_text() == digest: + return np.load(path) + order = acs_selection_order(rows["unit_key"].tolist(), salt=ACS_SELECTION_SALT) + rank = np.empty(len(order), dtype=np.int64) + rank[order] = np.arange(len(order)) + np.save(path, rank) + key.write_text(digest) + return rank + + +def compiled_measures(work: Path) -> list[str]: + """Column names of every materialized part, in order.""" + with open(work / "concept_specs.pkl", "rb") as handle: + return [spec.measure for spec in pickle.load(handle)] + ["state_income_tax"] + + +def do_materialize(args) -> None: + with open(args.work / "concept_specs.pkl", "rb") as handle: + concept_specs = pickle.load(handle) + measures = compiled_measures(args.work) + shard_dir = args.work / "shards" / args.source + out_dir = args.work / "concepts" / args.source + out_dir.mkdir(parents=True, exist_ok=True) + provenance = part_provenance(args.work, args.source, args.summary) + stale = stale_concept_parts(out_dir, provenance) + if stale and not args.replace_stale: + raise SystemExit(f"{len(stale)} {args.source} concept parts (e.g. {stale[0].name}) were not built " + "from the current shards, concept specs and summary; rerun with --replace-stale") + for path in stale: + for old in (path, path.with_suffix(".rows.npy"), path.with_suffix(".json")): + old.unlink(missing_ok=True) + log(f"removed stale {path.name}") + rows = pd.read_parquet(args.work / f"rows_{args.source}.parquet") + rows["row"] = np.arange(len(rows)) + if "spm_zero_adult_unit" in rows: + # Group-quarters records whose SPM unit has no classified adult: the + # pinned engine refuses them, and Census puts ACS group quarters + # outside the SPM universe (us_runtime/spm_universe_source.py). + rows = rows[~rows["spm_zero_adult_unit"]] + low, high = 0, len(rows) + if args.rank_range: + low, high = (int(x) for x in args.rank_range.split(",")) + rows["rank"] = acs_rank(args.work)[rows["row"].to_numpy()] + shards = sorted(shard_dir.glob("shard_*.pkl")) + if args.only: + wanted = {int(x) for x in args.only.split(",") if x.strip()} + shards = [s for s in shards if int(s.stem.split("_")[1]) in wanted] + suffix = f".r{low}-{high}" if args.rank_range else "" + for shard_path in shards: + out = out_dir / f"{shard_path.stem}{suffix}.npz" + if out.exists(): + continue + shard_rows = rows[rows["shard"] == int(shard_path.stem.split("_")[1])] + if args.rank_range: + shard_rows = shard_rows[(shard_rows["rank"] >= low) & (shard_rows["rank"] < high)] + if shard_rows.empty: + continue + wait_for_memory(args.min_available_gb) + started = time.time() + frame = _load_shard_frame(shard_path) + if len(shard_rows) < frame.n("household"): + keep = np.isin(frame.table("person")["person_household_id"].to_numpy(), + shard_rows["household_id"].to_numpy()) + frame = frame.select(keep) + household, compiled, compilation, _ = _materialize_frame( + frame, concept_specs, summary_path=args.summary, batch=args.batch + ) + position = pd.Series(shard_rows["row"].to_numpy(), index=shard_rows["household_id"].to_numpy()) + row_positions = position.reindex(household["household_id"].to_numpy()).to_numpy() + if np.isnan(row_positions.astype(float)).any(): + raise RuntimeError(f"{shard_path.name}: materialized households missing from the row index") + missing = [m for m in measures if m not in household.columns] + matrix = np.zeros((len(household), len(measures)), dtype=np.float32) + for j, measure in enumerate(measures): + if measure in household.columns: + matrix[:, j] = household[measure].to_numpy(dtype=np.float32) + csr = sp.csr_matrix(matrix) + np.save(out.with_suffix(".rows.npy"), row_positions.astype(np.int64)) + sp.save_npz(out.with_suffix(".tmp.npz"), csr) + out.with_suffix(".tmp.npz").replace(out) + write_json(out.with_suffix(".json"), { + "shard": shard_path.name, **provenance, + "rank_range": [low, high] if args.rank_range else None, + "households": len(household), "nnz": int(csr.nnz), + "missing_measures": missing, "compiled_concepts": len(compiled), + "batching": compilation.get("target_materialization_batching"), + "formula_derived_inputs": compilation.get("formula_derived_inputs"), + "wall_s": round(time.time() - started, 1), "peak_rss_gb": round(peak_rss_gb(), 2), + "cpu_s": round(resource.getrusage(resource.RUSAGE_SELF).ru_utime, 1), + }) + log(f"{args.source} {out.name}: {len(household)} hh, nnz {csr.nnz:,}, " + f"missing {len(missing)}, {time.time() - started:.0f}s, peak {peak_rss_gb():.1f} GB") + del frame, household, matrix, csr + gc.collect() + write_json(out_dir / "measures.json", measures) + + +def select_parts(parts: list[Path], wanted: str | None) -> list[Path]: + """The stored parts ``--parts`` names, or every part when it names none. + + Refuses a stem that matches no stored part and an empty selection: either + would otherwise write a passing receipt that checked nothing. + """ + if wanted: + stems = {x.strip() for x in wanted.split(",") if x.strip()} + unknown = sorted(stems - {p.stem for p in parts}) + if unknown: + raise SystemExit(f"--parts names no stored part: {', '.join(unknown)}") + parts = [p for p in parts if p.stem in stems] + if not parts: + raise SystemExit("partcheck has no stored parts to check") + return parts + + +def partcheck_columns(fresh: np.ndarray, stored: np.ndarray, tolerance: float) -> tuple[np.ndarray, np.ndarray]: + """Each column's largest difference between fresh and stored values, + scaled by the column's largest fresh magnitude (at least 1), and the + columns that fail: those over ``tolerance``, and those with a nonfinite + value on either side, which a tolerance test alone would pass (a NaN + difference compares false with every tolerance). + """ + with np.errstate(invalid="ignore", over="ignore"): + scaled = np.abs(fresh - stored).max(axis=0) / np.maximum(1.0, np.abs(fresh).max(axis=0)) + over = scaled > tolerance + finite = np.isfinite(fresh).all(axis=0) & np.isfinite(stored).all(axis=0) & np.isfinite(scaled) + return scaled, np.flatnonzero(~finite | over) + + +def do_partcheck(args) -> None: + """Differential: re-materialize a sample of each stored part's households + with the current concept specs and compare with the stored values. + + Guards against parts whose columns no longer mean what ``measures.json`` + says (a part built under other concept specs) or whose rows are other + households. ``--shards`` points at shard pickles cut from the same h5 when + the work directory's own were removed. + """ + started = time.time() + if not (math.isfinite(args.tolerance) and args.tolerance >= 0): + raise SystemExit(f"--tolerance must be a finite, nonnegative number, got {args.tolerance}") + if args.per_part < 1: + raise SystemExit(f"--per-part must be at least 1, got {args.per_part}") + with open(args.work / "concept_specs.pkl", "rb") as handle: + concept_specs = pickle.load(handle) + measures = compiled_measures(args.work) + shards_dir = args.shards or (args.work / "shards" / args.source) + shard_sha = json.loads((shards_dir / "shard.json").read_text())["h5_sha256"] + if shard_sha != shard_source_sha(args.work, args.source): + raise SystemExit(f"{shards_dir} was cut from another h5 than the work directory's {args.source} shards") + rows = pd.read_parquet(args.work / f"rows_{args.source}.parquet", columns=["household_id", "shard"]) + stored_parts = sorted(p for p in (args.work / "concepts" / args.source).glob("shard_*.npz") + if not p.name.endswith(".tmp.npz")) + parts = select_parts(stored_parts, args.parts) + rng = np.random.default_rng(20260930) + results = {} + for path in parts: + wait_for_memory(args.min_available_gb) + shard = int(path.stem.split("_")[1].split(".")[0]) + rows_path = path.with_suffix(".rows.npy") + positions = (np.load(rows_path) if rows_path.exists() + else np.flatnonzero(rows["shard"].to_numpy() == shard)) + stored = sp.load_npz(path).tocsr() + if stored.shape != (len(positions), len(measures)): + raise SystemExit(f"{path.name}: shape {stored.shape} vs {len(positions)} rows x {len(measures)} measures") + pick = np.sort(rng.choice(len(positions), min(args.per_part, len(positions)), replace=False)) + hh_ids = rows["household_id"].to_numpy()[positions[pick]] + frame = _load_shard_frame(shards_dir / f"shard_{shard:03d}.pkl") + frame = frame.select(np.isin(frame.table("person")["person_household_id"].to_numpy(), hh_ids)) + household, _, _, _ = _materialize_frame(frame, concept_specs, summary_path=args.summary, batch=args.batch) + order = pd.Series(np.arange(len(household)), index=household["household_id"].to_numpy()).reindex(hh_ids) + if order.isna().any(): + raise SystemExit(f"{path.name}: sampled households missing from the re-materialized frame") + fresh = np.column_stack([ + household[m].to_numpy(np.float64) if m in household.columns else np.zeros(len(household)) + for m in measures + ])[order.to_numpy().astype(np.int64)] + old = stored[pick].toarray().astype(np.float64) + scaled, bad = partcheck_columns(fresh, old, args.tolerance) + finite = np.isfinite(scaled) + largest = float(scaled[finite].max()) if finite.any() else None + results[path.name] = { + "households": int(len(pick)), "max_scaled_abs_diff": largest, + "n_nonfinite_columns": int((~finite).sum()), + "columns_over_tolerance": [measures[j] for j in bad[:20]], "n_columns_over_tolerance": int(len(bad)), + } + shown = "none finite" if largest is None else f"{largest:.2e}" + log(f"partcheck {args.source} {path.name}: {len(pick)} hh, max scaled diff {shown}, " + f"{len(bad)} columns failing ({int((~finite).sum())} nonfinite, tolerance {args.tolerance:g})") + del frame, household + gc.collect() + receipt = { + "source": args.source, "shards": str(shards_dir), "source_h5_sha256": shard_sha, + "concept_specs_sha256": sha256_file(args.work / "concept_specs.pkl"), + "summary_sha256": sha256_file(args.summary) if args.summary else None, + "tolerance": args.tolerance, "per_part": args.per_part, "parts": results, + "max_scaled_abs_diff": max((r["max_scaled_abs_diff"] for r in results.values() + if r["max_scaled_abs_diff"] is not None), default=None), + "wall_s": round(time.time() - started, 1), "peak_rss_gb": round(peak_rss_gb(), 2), + } + write_json(args.work / f"partcheck_{args.source}.json", receipt) + if any(r["n_columns_over_tolerance"] for r in results.values()): + raise SystemExit(f"partcheck {args.source}: stored values disagree with the current concept specs") + + +# ------------------------------------------------------------------ diffcheck + + +def do_diffcheck(args) -> None: + """Differential: production per-spec columns vs concept x geography mask.""" + started = time.time() + from microcosm.build.ledger_artifact import load_ledger_consumer_artifact + from microcosm.build.us_runtime import ( + apply_us_medicaid_enrollment_substitutions, + compile_us_fiscal_target_registry, + default_congressional_district_vintage_crosswalk_path, + load_congressional_district_vintage_crosswalk, + ) + + targets = pd.read_parquet(args.work / "targets.parquet") + with open(args.work / "concept_specs.pkl", "rb") as handle: + concept_specs = pickle.load(handle) + artifact = load_ledger_consumer_artifact(args.feed) + registry = compile_us_fiscal_target_registry( + artifact.facts, target_period=PERIOD, + congressional_district_vintage_crosswalk=load_congressional_district_vintage_crosswalk( + default_congressional_district_vintage_crosswalk_path()), + age_targets=True) + registry, _ = apply_us_medicaid_enrollment_substitutions(registry) + specs = registry.specs + usable = targets[targets["excluded"].isna() & (targets["level"] != "national")] + rng = np.random.default_rng(20260928) + sample = [] + for _key, group in usable.groupby(["family", "level"]): + take = min(len(group), args.per_group) + sample.extend(rng.choice(group["target_index"].to_numpy(), take, replace=False).tolist()) + sample_specs = [specs[i] for i in sorted(sample)] + results = {} + previous = json.loads((args.work / "diffcheck.json").read_text())["results"] \ + if (args.work / "diffcheck.json").exists() else {} + for source in args.sources.split(","): + frame = _load_shard_frame(args.work / "shards" / source / "shard_000.pkl") + hh_ids = frame.table("household")["household_id"].to_numpy() + index = pd.read_parquet(args.work / f"rows_{source}.parquet") + if "spm_zero_adult_unit" in index: + flagged = index.loc[(index["shard"] == 0) & index["spm_zero_adult_unit"], "household_id"] + hh_ids = hh_ids[~np.isin(hh_ids, flagged.to_numpy())] + hh_ids = hh_ids[: args.households] + person_mask = np.isin(frame.table("person")["person_household_id"].to_numpy(), hh_ids) + frame = frame.select(person_mask) + summary = args.summary if source == "acs" else None + direct, _, _, _ = _materialize_frame(frame, sample_specs, summary_path=summary, batch=args.batch) + concept, _, _, _ = _materialize_frame(frame, concept_specs, summary_path=summary, batch=args.batch) + state = pd.to_numeric(direct["state_fips"]).to_numpy() + cd = pd.to_numeric(direct["congressional_district_geoid"]).to_numpy() + worst, checked, skipped = 0.0, 0, 0 + per_family = {} + if targets["name"].duplicated().any(): + raise SystemExit("target names are not unique; diffcheck keys on them") + by_name = targets.set_index("name") + for spec in sample_specs: + row = by_name.loc[spec.name] + if spec.measure not in direct.columns or row["measure"] not in concept.columns: + skipped += 1 + continue + mask = np.ones(len(direct), bool) + if row["state_fips"] >= 0: + mask &= state == row["state_fips"] + if row["cd_geoid"] >= 0: + mask &= cd == row["cd_geoid"] + expected = direct[spec.measure].to_numpy(np.float64) + got = concept[row["measure"]].to_numpy(np.float64) * mask + scale = max(1.0, float(np.abs(expected).max())) + diff = float(np.abs(expected - got).max()) / scale + worst = max(worst, diff) + key = f"{spec.family}/{row['level']}" + per_family[key] = max(per_family.get(key, 0.0), diff) + checked += 1 + results[source] = {"households": len(direct), "specs_checked": checked, + "specs_skipped": skipped, "max_scaled_abs_diff": worst, + "per_family_level": per_family} + log(f"diffcheck {source}: {json.dumps(results[source])}") + write_json(args.work / "diffcheck.json", { + "results": {**previous, **results}, "sample_size": len(sample_specs), + "wall_s": round(time.time() - started, 1), "peak_rss_gb": round(peak_rss_gb(), 2)}) + + +# ------------------------------------------------------------------ truth + +ACS_TRUTH_CELLS = { # ACS 2024 1-year table-based summary file cells (E = estimate) + "households": ["B25003_E001"], + "owner": ["B25003_E002"], + "renter": ["B25003_E003"], + "rent_contract_monthly_aggregate": ["B25060_E001"], + "rent_gross_monthly_aggregate": ["B25065_E001"], + "real_estate_taxes_aggregate": ["B25090_E001"], + "persons_in_households": ["B25008_E001"], + "persons_total": ["B01003_E001"], + "persons_male": ["B01001_E002"], + "persons_0_17": [f"B01001_E{i:03d}" for i in (3, 4, 5, 6, 27, 28, 29, 30)], + "persons_65p": [f"B01001_E{i:03d}" for i in (*range(20, 26), *range(44, 50))], +} +SUMMARY_LEVELS = {"0100000US": "national", "0400000US": "state", "0500000US": "county", "5001900US": "cd"} + + +def do_truth(args) -> None: + """Long truth table from the ACS 2024 1-year table-based summary file.""" + tables = sorted({cell.split("_")[0] for cells in ACS_TRUTH_CELLS.values() for cell in cells}) + frames, digests = {}, {} + for table in tables: + path = args.sf_dir / f"acsdt1y2024-{table.lower()}.dat" + digests[path.name] = sha256_file(path) + frames[table] = pd.read_csv(path, sep="|", dtype=str).set_index("GEO_ID") + records = [] + for measure, cells in ACS_TRUTH_CELLS.items(): + table = cells[0].split("_")[0] + frame = frames[table] + values = frame[cells].apply(pd.to_numeric, errors="coerce") + total = values.sum(axis=1, min_count=len(cells)) + for geo_id, value in total.items(): + prefix, code = geo_id[:9], geo_id[9:] + level = SUMMARY_LEVELS.get(prefix) + if level is None or not np.isfinite(value) or value < 0: + continue + if level == "national": + geo = 0 + elif level == "cd": + district = code[2:] + geo = int(code[:2]) * 100 + (0 if district == "98" else int(district)) + else: + geo = int(code) + if level in ("state", "county", "cd") and int(code[:2]) == 72: + continue # Puerto Rico is outside the pool + records.append((level, geo, measure, float(value))) + truth = pd.DataFrame(records, columns=["level", "geo", "measure", "value"]) + wide = truth.pivot_table(index=["level", "geo"], columns="measure", values="value").reset_index() + wide["persons_18_64"] = wide["persons_total"] - wide["persons_0_17"] - wide["persons_65p"] + wide["rent_contract_annual_aggregate"] = 12 * wide.pop("rent_contract_monthly_aggregate") + wide["rent_gross_annual_aggregate"] = 12 * wide.pop("rent_gross_monthly_aggregate") + truth = wide.melt(id_vars=["level", "geo"], var_name="measure", value_name="value").dropna() + args.out.parent.mkdir(parents=True, exist_ok=True) + truth.to_parquet(args.out, index=False) + write_json(args.out.with_suffix(".json"), { + "source": "ACS 2024 1-year table-based summary file (Census), " + "https://www2.census.gov/programs-surveys/acs/summary_file/2024/table-based-SF/", + "files_sha256": digests, "cells": ACS_TRUTH_CELLS, + "rows_by_level": truth.groupby("level").size().to_dict(), + }) + log(f"truth: {truth.groupby('level').size().to_dict()}") + + +def truth_table(path: Path) -> pd.DataFrame: + return pd.read_parquet(path) + + +# ------------------------------------------------------------------ arms + +BUDGETS = (300_000, 600_000, 1_200_000) +NEWEST_INCOME_YEAR = 2024 + + +def year_sets(newest: int = NEWEST_INCOME_YEAR) -> tuple[tuple[int, ...], ...]: + """The newest one, two and three CPS income years.""" + return tuple(tuple(range(newest - k, newest + 1)) for k in range(3)) + + +def arm_grid(include_largest: bool = True, newest: int = NEWEST_INCOME_YEAR) -> list[SupportMixArm]: + """The 30 arms. ACS-only arms carry no years, so their labels (and + receipts) are shared across grids with different newest years.""" + arms: list[SupportMixArm] = [] + sets = year_sets(newest) + for years in sets: + arms.append(SupportMixArm(budget=None, cps_income_years=years)) + for budget in BUDGETS if include_largest else BUDGETS[:2]: + for years in sets: + arms.append(SupportMixArm(budget=budget, cps_income_years=years, acs_fill_share=1.0)) + arms.append(SupportMixArm(budget=budget, cps_income_years=years, acs_fill_share=0.0)) + arms.append(SupportMixArm(budget=budget, cps_income_years=(), acs_fill_share=1.0)) + for years in (sets[0], sets[2]): + arms.append(SupportMixArm(budget=600_000, cps_income_years=years, acs_fill_share=0.5)) + for seed in (1, 2): + arms.append(SupportMixArm(budget=300_000, cps_income_years=years, acs_fill_share=1.0, seed=seed)) + return arms + + +def parse_arm(label: str) -> SupportMixArm: + budget, years, acs, seed = label.split(".") + return SupportMixArm( + budget=None if budget == "natural" else int(budget[1:-1]) * 1000, + cps_income_years=() if years == "cps0" else tuple(int(y) for y in years[3:].split("-")), + acs_fill_share=int(acs[3:]) / 100, + seed=int(seed[1:]), + ) + + +class _ConceptStore: + """Row-addressable concept values for one source (CSR, float32). + + Each materialized part carries its rows' global positions; rows never + materialized are all-zero and flagged, and an arm refuses to use them. + Parts must not overlap: a row materialized twice would be summed. + """ + + def __init__(self, work: Path, source: str): + directory = work / "concepts" / source + stale = stale_concept_parts(directory, part_provenance(work, source, with_summary=False)) + if stale: + raise RuntimeError(f"{len(stale)} {source} concept parts (e.g. {stale[0].name}) were not built " + "from the current shards and concept specs; rerun materialize --replace-stale") + shard_of = pd.read_parquet(work / f"rows_{source}.parquet", columns=["shard"])["shard"].to_numpy() + n_rows = len(shard_of) + self.measures = json.loads((directory / "measures.json").read_text()) + if self.measures != compiled_measures(work): + raise RuntimeError(f"{source} measures.json disagrees with concept_specs.pkl; rerun materialize") + rows_parts, parts = [], [] + self.materialized = np.zeros(n_rows, dtype=bool) + for path in sorted(directory.glob("shard_*.npz")): + if path.name.endswith(".tmp.npz"): + continue + part = sp.load_npz(path).tocoo() + rows_path = path.with_suffix(".rows.npy") + rows = (np.load(rows_path) if rows_path.exists() + else np.flatnonzero(shard_of == int(path.stem.split("_")[1].split(".")[0]))) + if part.shape[0] != len(rows): + raise RuntimeError(f"{path.name}: {part.shape[0]} rows but {len(rows)} positions") + if self.materialized[rows].any(): + raise RuntimeError(f"{path.name}: overlaps rows already materialized by another part") + self.materialized[rows] = True + rows_parts.append(rows[part.row]) + parts.append(part) + self.matrix = sp.csr_matrix( + (np.concatenate([p.data for p in parts]).astype(np.float32), + (np.concatenate(rows_parts), np.concatenate([p.col for p in parts]))), + shape=(n_rows, len(self.measures)), + ) + + +class _SparseOperator: + """``A @ w`` with a precomputed transpose for the backward pass. + + Duck-types the torch tensor ``_optimize`` expects: it reads ``.layout`` + (not sparse CSR, so ``_apply_constraint`` calls ``matrix @ weights``) and + ``@``. Forward and backward are one CSR SpMV each. + """ + + def __init__(self, matrix: sp.csr_matrix): + import torch + + self.torch = torch + self.layout = torch.strided + self.shape = matrix.shape + self.A = self._tensor(matrix) + self.AT = self._tensor(matrix.T.tocsr()) + + def _tensor(self, m): + torch = self.torch + m = m.astype(np.float32) + return torch.sparse_csr_tensor( + torch.from_numpy(m.indptr.astype(np.int64)), + torch.from_numpy(m.indices.astype(np.int64)), + torch.from_numpy(m.data), + size=m.shape, + ) + + def __matmul__(self, weights): + return _SpMV.apply(weights, self) + + +def _spmv_class(): + import torch + + class SpMV(torch.autograd.Function): + @staticmethod + def forward(ctx, weights, operator): + ctx.operator = operator + return (operator.A @ weights.unsqueeze(1)).squeeze(1) + + @staticmethod + def backward(ctx, grad): + return (ctx.operator.AT @ grad.unsqueeze(1)).squeeze(1), None + + return SpMV + + +_SpMV = None + + +def _assemble(values: sp.csr_matrix, geo: dict[str, np.ndarray], frame: pd.DataFrame, + state_code: dict, cd_code: dict) -> sp.csr_matrix: + """Targets x rows for a target frame (see ``assemble_target_matrix``).""" + levels = frame["level"].to_numpy() + target_geo = np.zeros(len(frame), dtype=np.int64) + is_state, is_cd = levels == "state", levels == "cd" + target_geo[is_state] = [state_code[x] for x in frame["state_fips"].to_numpy()[is_state]] + target_geo[is_cd] = [cd_code[x] for x in frame["cd_geoid"].to_numpy()[is_cd]] + return assemble_target_matrix( + values, geo, frame["col"].to_numpy(), levels, target_geo + ).tocsr() + + +def do_arm(args) -> None: + global _SpMV + started = time.time() + arm = parse_arm(args.arm) + out = args.work / "arms" / args.product / f"{arm.label}.json" + previous = json.loads(out.read_text()) if out.exists() else None + inputs = arm_inputs(input_digests(args.work, args.truth, args.epochs), arm, exclude_gq=args.exclude_gq) + rescore = ( + previous is not None and out.with_suffix(".weights.npy").exists() and not args.force + and (args.rescore or not previous.get("scored_all_levels")) + ) + if (previous is not None and previous.get("scored_all_levels") and inputs_current(previous.get("inputs"), inputs) + and not args.force and not args.rescore): + log(f"{out} exists") + return + wait_for_memory(args.min_available_gb) + import torch + + torch.set_num_threads(args.threads) + _SpMV = _spmv_class() + from microcosm.calibrate.solve import _optimize, default_target_loss_scales + + targets = pd.read_parquet(args.work / "targets.parquet") + rows_cps = pd.read_parquet(args.work / "rows_cps.parquet") + rows_acs = pd.read_parquet(args.work / "rows_acs.parquet") + # "row" is the position in the source's concept store; it survives filters. + rows_cps["row"] = np.arange(len(rows_cps)) + rows_acs["row"] = np.arange(len(rows_acs)) + if args.exclude_gq: + rows_acs = rows_acs[~rows_acs["group_quarters"]].reset_index(drop=True) + if "spm_zero_adult_unit" in rows_acs: + rows_acs = rows_acs[~rows_acs["spm_zero_adult_unit"]].reset_index(drop=True) + # ---------------- rows + asec = rows_cps[rows_cps["channel"] == "asec"] + cps_hh = asec.groupby("income_year").size().to_dict() + if (asec.groupby("source_key").size() != 1).any() or rows_cps["unit_key"].str.endswith("nan").any(): + raise SystemExit("CPS source keys are not one ASEC row per source household") + if rows_cps.groupby("income_year")["source_key"].nunique().to_dict() != cps_hh: + raise SystemExit("CPS source keys disagree with ASEC household counts") + for name, frame in (("cps", rows_cps), ("acs", rows_acs)): + if not (frame["owner"].mean() > 0.3 and frame["renter"].mean() > 0.1): + raise SystemExit(f"{name} tenure columns look unparsed (owner/renter shares)") + counts = plan_arm_counts(arm, cps_households_by_year=cps_hh, acs_households=len(rows_acs)) + cps_rows = rows_cps[rows_cps["income_year"].isin(arm.cps_income_years)].reset_index(drop=True) + source_keys = cps_rows["source_key"].drop_duplicates().to_numpy() + copies_by_source = dict(zip(source_keys, clone_copies( + list(source_keys), counts.clones, salt=f"{CLONE_SALT}.s{arm.seed}"), strict=True)) + cps_copies = cps_rows["source_key"].map(copies_by_source).fillna(0).to_numpy(np.int64) \ + if len(cps_rows) else np.zeros(0, np.int64) + # One fixed order; replicate r takes the r-th disjoint block of it, so + # replicates are independent draws and seed 0 arms are nested by budget. + rank = acs_rank(args.work)[rows_acs["row"].to_numpy()] + order = np.argsort(rank, kind="stable") + block = order[arm.seed * counts.acs:(arm.seed + 1) * counts.acs] + if len(block) < counts.acs: + raise SystemExit(f"{arm.label}: replicate block exceeds the ACS rows available") + acs_rows = rows_acs.iloc[np.sort(block)].reset_index(drop=True) + # Pre-repair mass only: the population mass repair below sets the level. + newest = rows_cps["income_year"].max() + total_mass = float(rows_cps.loc[rows_cps["income_year"] == newest, "design_weight"].sum() * 3) + cps_w, acs_w = arm_initial_weights( + cps_design_weights=cps_rows["design_weight"].to_numpy(), + cps_income_year=cps_rows["income_year"].to_numpy(), + cps_copies=cps_copies, + acs_design_weights=acs_rows["design_weight"].to_numpy(), + counts=counts, + total_mass=total_mass, + ) + # Expand CPS copies; copy 0 keeps its own geography, copy k>0 draws a new + # (district, county) within its state in proportion to ACS households. + repeat = 1 + cps_copies + cps_expanded = cps_rows.loc[cps_rows.index.repeat(repeat)].reset_index(drop=True) + copy_number = np.concatenate([np.arange(r) for r in repeat]) if len(repeat) else np.zeros(0, int) + cps_expanded["copy"] = copy_number + w_cps = np.repeat(cps_w, repeat) + if counts.clones: + geo_pool = rows_acs.loc[~rows_acs["group_quarters"].astype(bool), + ["state_fips", "cd_geoid", "county_fips", "design_weight"]] + for state, group in cps_expanded[cps_expanded["copy"] > 0].groupby("state_fips"): + pool = geo_pool[geo_pool["state_fips"] == state] + cum = np.cumsum(pool["design_weight"].to_numpy()) + draws = np.array([ + hash_uniform(f"{k}|{r}|{c}", salt=f"{CLONE_GEO_SALT}.s{arm.seed}") + for k, r, c in zip(group["source_key"], group["row"], group["copy"], strict=True) + ]) + pick = np.searchsorted(cum, draws * cum[-1], side="right") + cps_expanded.loc[group.index, "cd_geoid"] = pool["cd_geoid"].to_numpy()[pick] + cps_expanded.loc[group.index, "county_fips"] = pool["county_fips"].to_numpy()[pick] + selected = pd.concat([cps_expanded.assign(source="cps"), acs_rows.assign(source="acs", copy=0)], + ignore_index=True) + w0 = np.concatenate([w_cps, acs_w]) + # The release's base population mass repair: rescale so the weighted + # person count equals the Census benchmark before a conserved solve. + benchmark = float(release_tool().US_BASE_PERSON_POPULATION_BENCHMARK) + mass_factor = benchmark / float(selected["persons"].to_numpy() @ w0) + w0 = w0 * mass_factor + rows_digest = hashlib.sha256(pd.util.hash_pandas_object( + selected[["source", "row", "copy", "cd_geoid"]], index=False).to_numpy().tobytes()).hexdigest() + # ---------------- concept values for the selected rows + stores = {} + blocks = [] + for source, frame in (("cps", cps_expanded), ("acs", acs_rows)): + if not len(frame): + continue + if source not in stores: + stores[source] = _ConceptStore(args.work, source) + needed = frame["row"].to_numpy() + unmaterialized = int((~stores[source].materialized[needed]).sum()) + if unmaterialized: + raise SystemExit(f"{arm.label}: {unmaterialized} {source} rows are not materialized yet") + blocks.append(stores[source].matrix[needed]) + if len({tuple(store.measures) for store in stores.values()}) > 1: + raise SystemExit("CPS and ACS concept stores disagree on their columns") + measures = next(iter(stores.values())).measures + values = sp.vstack(blocks, format="csr") + del stores + gc.collect() + # ---------------- targets and lookup tables + measure_col = {m: j for j, m in enumerate(measures)} + usable = targets[targets["excluded"].isna() & targets["measure"].isin(measure_col)].copy() + usable["col"] = usable["measure"].map(measure_col) + # Both products are scored on every held-out target (national, state and + # district); the national product trains on its surface only. + holdout = usable[usable["role"] == "holdout"].reset_index(drop=True) + if args.product == "national": + usable = usable[usable["in_national_state"]] + train = usable[usable["role"] == "train"].reset_index(drop=True) + states = np.unique(selected["state_fips"]) + cds = np.unique(np.concatenate([selected["cd_geoid"].to_numpy(), usable.loc[usable["cd_geoid"] >= 0, "cd_geoid"].to_numpy()])) + state_code = {s: i for i, s in enumerate(np.unique(np.concatenate([states, usable["state_fips"][usable["state_fips"] >= 0]])))} + cd_code = {c: i for i, c in enumerate(cds)} + geo = {"state": selected["state_fips"].map(state_code).to_numpy(), + "cd": selected["cd_geoid"].map(cd_code).to_numpy()} + + a_train = _assemble(values, geo, train, state_code, cd_code) + a_hold = _assemble(values, geo, holdout, state_code, cd_code) + b_train = train["value"].to_numpy(np.float64) + loss_w = train["loss_weight_national_state" if args.product == "national" else "loss_weight"].to_numpy(np.float64) + # Local product: district household populations are trained, as in the + # ACS local release (never scored). + truth = truth_table(args.truth) + extra_train = 0 + if args.product == "local": + # Household population (B25008): group-quarters rows neither count + # toward nor can be pushed by it, so CPS-only arms are not forced to + # inflate households to stand in for dorms and nursing homes. + cd_truth = truth[(truth["level"] == "cd") & (truth["measure"] == "persons_in_households")] + cd_truth = cd_truth[cd_truth["geo"].isin(cd_code)] + persons = selected["persons"].to_numpy(np.float64) * ~selected["group_quarters"].astype(bool).to_numpy() + codes = selected["cd_geoid"].map({g: i for i, g in enumerate(cd_truth["geo"])}).fillna(-1).to_numpy().astype(np.int64) + keep = (codes >= 0) & (persons > 0) + pop = sp.csr_matrix((persons[keep], (codes[keep], np.flatnonzero(keep))), shape=(len(cd_truth), len(selected))) + a_train = sp.vstack([a_train, pop], format="csr") + b_train = np.concatenate([b_train, cd_truth["value"].to_numpy(np.float64)]) + loss_w = np.concatenate([loss_w, np.ones(len(cd_truth))]) + extra_train = len(cd_truth) + # Drop training rows no selected household can move (zero rows). + nonzero = np.diff(a_train.indptr) > 0 + a_train, b_train, loss_w = a_train[nonzero], b_train[nonzero], loss_w[nonzero] + scales = default_target_loss_scales(b_train) + if rescore and (refusal := rescore_refusal(previous, inputs, rows_digest)): + if args.rescore: + raise SystemExit(f"{arm.label}: cannot re-score the saved weights: {refusal}; re-solve with --force") + log(f"{arm.label}: re-solving instead of re-scoring: {refusal}") + rescore = False + solve_started = time.time() + if rescore: + # Re-score saved weights (a scoring change, no re-solve). + weights = np.load(out.with_suffix(".weights.npy")).astype(np.float64) + if len(weights) != len(w0): + raise SystemExit(f"{arm.label}: saved weights do not match the arm's rows") + trajectory = np.array([previous["train"]["loss_initial"], previous["train"]["loss_final"]]) + else: + operator = _SparseOperator(a_train) + weights, trajectory = _optimize( + operator, + torch.tensor(b_train, dtype=torch.float32), + torch.tensor(loss_w, dtype=torch.float32), + torch.tensor(scales, dtype=torch.float32), + 1.0, + w0, + epochs=args.epochs, + learning_rate=0.02, + conserve_mass=True, + max_weight_ratio=5.0, + l0_lambda=0.0, + l2_lambda=0.0, + target_records=None, + init_mean=0.999, + temperature=0.25, + ) + del operator + solve_s = time.time() - solve_started if not rescore else previous["runtime"]["solve_s"] + gc.collect() + # ---------------- scoring + def errors(matrix, target_values, w): + est = matrix @ w + rel = np.abs(est - target_values) / np.maximum(np.abs(target_values), 1.0) + return est, rel + + result_targets = [] + est0, rel0 = errors(a_hold, holdout["value"].to_numpy(), w0) + est1, rel1 = errors(a_hold, holdout["value"].to_numpy(), weights) + supported = np.diff(a_hold.indptr) > 0 + for i, row in enumerate(holdout.itertuples(index=False)): + result_targets.append({ + "name": row.name, "family": row.family, "level": row.level, + "dimension_group": row.dimension_group, "dimension": row.dimension, + "loss_weight": row.loss_weight, "target": row.value, + "estimate_initial": float(est0[i]), "estimate": float(est1[i]), + "rel_error_initial": float(rel0[i]), "rel_error": float(rel1[i]), + "supported": bool(supported[i]), + }) + # ACS-native evaluation and report-only measures from row columns. + acs_eval = [] + household_rows = ~selected["group_quarters"].astype(bool).to_numpy() + measures_row = { + "households": household_rows.astype(float), + "owner": selected["owner"].to_numpy() * household_rows, + "renter": selected["renter"].to_numpy() * household_rows, + "rent_contract_annual_aggregate": selected["rent_annual"].to_numpy() * household_rows, + "rent_gross_annual_aggregate": selected["rent_annual"].to_numpy() * household_rows, + "real_estate_taxes_aggregate": selected["real_estate_taxes"].to_numpy() * household_rows * selected["owner"].to_numpy(), + "persons_in_households": selected["persons"].to_numpy() * household_rows, + "persons_total": selected["persons"].to_numpy(), + "persons_0_17": selected["persons_0_17"].to_numpy(), + "persons_18_64": selected["persons_18_64"].to_numpy(), + "persons_65p": selected["persons_65p"].to_numpy(), + "persons_male": selected["persons_male"].to_numpy(), + } + geo_cols = {"national": np.zeros(len(selected), np.int64), + "state": selected["state_fips"].to_numpy(np.int64), + "cd": selected["cd_geoid"].to_numpy(np.int64), + "county": selected["county_fips"].to_numpy(np.int64)} + for level, codes in geo_cols.items(): + level_truth = truth[truth["level"] == level] + uniq, inverse = np.unique(codes, return_inverse=True) + for measure, vec in measures_row.items(): + t = level_truth[level_truth["measure"] == measure] + if t.empty: + continue + e0 = np.bincount(inverse, weights=vec * w0, minlength=len(uniq)) + e1 = np.bincount(inverse, weights=vec * weights, minlength=len(uniq)) + est0_map = dict(zip(uniq, e0, strict=True)) + est1_map = dict(zip(uniq, e1, strict=True)) + for geo_code, value in zip(t["geo"], t["value"], strict=True): + if (level == "cd" and args.product == "local" and measure == "persons_in_households"): + continue # trained + acs_eval.append((level, measure, int(geo_code), float(value), + float(est0_map.get(geo_code, 0.0)), float(est1_map.get(geo_code, 0.0)))) + acs_eval = pd.DataFrame(acs_eval, columns=["level", "measure", "geo", "truth", "estimate_initial", "estimate"]) + report = {} + # Census puts ACS group quarters outside the SPM universe; report the + # rates over household rows only. + in_universe = ~selected["group_quarters"].astype(bool).to_numpy() + for name in REPORT_SPECS: + measure = f"bakeoff_{name.replace('.', '_')}" + if measure in measure_col: + col = values[:, measure_col[measure]].toarray().ravel() * in_universe + report[name] = {"initial": float(col @ w0), "calibrated": float(col @ weights)} + persons = selected["persons"].to_numpy() * in_universe + children = selected["persons_0_17"].to_numpy() * in_universe + if "report.spm_poor_persons" in report: + report["spm_rate"] = {k: report["report.spm_poor_persons"][k] / float(persons @ w) for k, w in (("initial", w0), ("calibrated", weights))} + report["spm_child_rate"] = {k: report["report.spm_poor_children"][k] / float(children @ w) for k, w in (("initial", w0), ("calibrated", weights))} + # ---------------- ESS and receipt + units = selected["unit_key"].to_numpy() + source_units = (selected["source_key"].astype(str) + "#" + selected["copy"].astype(str)).to_numpy() + cd_ess = [] + for _cd, idx in pd.Series(np.arange(len(selected))).groupby(selected["cd_geoid"].to_numpy()): + cd_ess.append(distinct_unit_ess(weights[idx.to_numpy()], units[idx.to_numpy()])) + receipt = { + "arm": arm.label, "product": args.product, "scored_all_levels": True, + "rescored": bool(rescore), + "counts": dataclasses.asdict(counts), + "rows": {"cps_physical": int(len(cps_expanded)), "acs": int(len(acs_rows)), "total": int(len(selected))}, + "distinct_households": int(pd.Series(units).nunique()), + "ess": { + "rows_initial": kish_ess(w0), "rows": kish_ess(weights), + "distinct_households_initial": distinct_unit_ess(w0, units), + "distinct_households": distinct_unit_ess(weights, units), + "source_records": distinct_unit_ess(weights, source_units), + "cd_distinct_median": float(np.median(cd_ess)), "cd_distinct_p10": float(np.percentile(cd_ess, 10)), + }, + "train": {"targets": int(a_train.shape[0]), "cd_population_targets": extra_train, + "nnz": int(a_train.nnz), + "loss_initial": float(trajectory[0]), "loss_final": float(trajectory[-1]), + "loss_at": (previous["train"]["loss_at"] if rescore else + {str(e): float(trajectory[min(e, len(trajectory)) - 1]) for e in (100, 250, 500, 1000, len(trajectory))})}, + "holdout_targets": result_targets, + "acs_native": acs_eval.to_dict(orient="records"), + "report_only": report, + "weights": {"mass": float(weights.sum()), "population_mass_factor": mass_factor, "max_ratio": float((weights / w0).max()), + "min_ratio": float((weights / w0).min())}, + "runtime": ( + {**previous["runtime"], "rescore_wall_s": round(time.time() - started, 1), + "rescore_peak_rss_gb": round(peak_rss_gb(), 2)} + if rescore else + {"wall_s": round(time.time() - started, 1), "solve_s": round(solve_s, 1), + "epochs": args.epochs, "threads": args.threads, "peak_rss_gb": round(peak_rss_gb(), 2)} + ), + "inputs": previous["inputs"] if rescore else inputs, + "rows_digest": rows_digest, + } + write_json(out, receipt) + np.save(out.with_suffix(".weights.npy"), weights.astype(np.float32)) + log(f"{args.product} {arm.label}: rows {len(selected):,} train {a_train.shape[0]} " + f"loss {trajectory[0]:.4f}->{trajectory[-1]:.4f} solve {solve_s:.0f}s peak {peak_rss_gb():.1f} GB") + + +def do_run_grid(args) -> None: + """Run every missing (arm, product) receipt, one subprocess each.""" + import subprocess + + arms = [a.label for a in arm_grid(not args.no_largest, args.newest_year)] + digests = input_digests(args.work, args.truth, args.epochs) + if args.only: + arms = [a for a in arms if any(token in a for token in args.only.split(","))] + failed = [] + for product in args.products.split(","): + for label in arms: + out = args.work / "arms" / product / f"{label}.json" + if out.exists(): + receipt = json.loads(out.read_text()) + current = arm_inputs(digests, parse_arm(label)) + if receipt.get("scored_all_levels") and inputs_current(receipt.get("inputs"), current): + continue + wait_for_memory(args.min_available_gb) + command = [sys.executable, str(Path(__file__).resolve()), "arm", "--work", str(args.work), + "--arm", label, "--product", product, "--truth", str(args.truth), + "--epochs", str(args.epochs), "--threads", str(args.threads), + "--min-available-gb", str(args.min_available_gb)] + log(f"run {product} {label}") + result = subprocess.run(command, check=False) + if result.returncode: + log(f"FAILED {product} {label}: exit {result.returncode}") + failed.append(f"{product} {label}") + if failed: + raise SystemExit(f"{len(failed)} arms failed: {', '.join(failed)}") + + +# ------------------------------------------------------------------ report + + +def do_report(args) -> None: + records, acs_records, summary = [], [], [] + expected = {(product, arm.label) for product in ("national", "local") for arm in arm_grid(True, args.newest_year)} + digests = input_digests(args.work, args.truth, args.epochs) + stale, stale_keys = [], set() + for path in sorted((args.work / "arms").glob("*/*.json")): + receipt = json.loads(path.read_text()) + if (receipt["product"], receipt["arm"]) not in expected: + log(f"report: skipping {receipt['product']} {receipt['arm']} (not in the {args.newest_year} grid)") + continue + arm = parse_arm(receipt["arm"]) + if not inputs_current(receipt.get("inputs"), arm_inputs(digests, arm)): + stale.append(f"{receipt['product']} {receipt['arm']}") + stale_keys.add((receipt["product"], receipt["arm"])) + continue + base = {"arm": receipt["arm"], "product": receipt["product"]} + base.update({"budget": arm.budget or 0, "cps_years": len(arm.cps_income_years), + "acs_fill_share": arm.acs_fill_share, "seed": arm.seed}) + for t in receipt["holdout_targets"]: + records.append({**base, **t}) + for a in receipt["acs_native"]: + acs_records.append({**base, **a}) + loss_at = receipt["train"].get("loss_at", {}) + summary.append({**base, **receipt["counts"], **{f"rows_{k}": v for k, v in receipt["rows"].items()}, + "rescored": bool(receipt.get("rescored")), + "loss_1000": loss_at.get("1000"), "loss_final": receipt["train"]["loss_final"], + "distinct_households": receipt["distinct_households"], + **{f"ess_{k}": v for k, v in receipt["ess"].items()}, + "train_loss_final": receipt["train"]["loss_final"], + "train_targets": receipt["train"]["targets"], + **{f"runtime_{k}": v for k, v in receipt["runtime"].items()}, + **{f"report_{k}": (v["calibrated"] if isinstance(v, dict) else v) + for k, v in receipt["report_only"].items()}}) + if stale and not args.allow_stale: + raise SystemExit(f"{len(stale)} receipts are stale against the current inputs (e.g. {stale[:3]}); " + "re-solve them or pass --allow-stale to leave them out") + if stale: + log(f"report: leaving out {len(stale)} stale receipts (e.g. {stale[:3]})") + # A stale receipt that --allow-stale leaves out still exists, so it does + # not count as missing. + missing = sorted(expected - {(r["product"], r["arm"]) for r in summary} - stale_keys) + if missing and not args.allow_missing: + raise SystemExit(f"{len(missing)} expected receipts missing (e.g. {missing[:3]}); " + "pass --allow-missing for a partial report") + holdout = pd.DataFrame(records) + acs_native = pd.DataFrame(acs_records) + arms = pd.DataFrame(summary) + args.out.mkdir(parents=True, exist_ok=True) + arms.to_csv(args.out / "arms.csv", index=False) + if not holdout.empty: + holdout["capped"] = holdout["rel_error"].clip(upper=1.0) + holdout["capped_initial"] = holdout["rel_error_initial"].clip(upper=1.0) + # Unsupported targets (no row can move them) are scored as misses + # (estimate 0 -> capped error 1), so every arm is averaged over the + # same held-out set; an intersection table is written as well. + supported_everywhere = holdout.groupby(["product", "name"])["supported"].transform("all") + holdout[supported_everywhere].groupby( + ["product", "arm", "dimension_group", "dimension", "level"] + ).agg(targets=("capped", "size"), capped_mean=("capped", "mean")).reset_index().to_csv( + args.out / "holdout_by_dimension_level_common_support.csv", index=False) + grouped = holdout.groupby( + ["product", "arm", "dimension_group", "dimension", "level"]) + table = grouped.apply(lambda g: pd.Series({ + "targets": len(g), + "capped_mean": g["capped"].mean(), + "weighted_capped_mean": np.average(g["capped"], weights=g["loss_weight"]), + "median_rel": g["rel_error"].median(), + "capped_mean_initial": g["capped_initial"].mean(), + "unsupported": int((~g["supported"]).sum()), + })).reset_index() + table.to_csv(args.out / "holdout_by_dimension_level.csv", index=False) + unsupported = holdout[~holdout["supported"]].groupby(["product", "arm"]).size() + unsupported.to_csv(args.out / "holdout_unsupported.csv") + if not acs_native.empty: + acs_native["rel"] = (acs_native["estimate"] - acs_native["truth"]).abs() / acs_native["truth"].clip(lower=1.0) + acs_native["rel_initial"] = (acs_native["estimate_initial"] - acs_native["truth"]).abs() / acs_native["truth"].clip(lower=1.0) + acs_table = acs_native.groupby(["product", "arm", "level", "measure"]).agg( + geos=("geo", "size"), mean_rel=("rel", lambda s: s.clip(upper=1.0).mean()), + median_rel=("rel", "median"), mean_rel_initial=("rel_initial", lambda s: s.clip(upper=1.0).mean()), + ).reset_index() + acs_table.to_csv(args.out / "acs_native_by_level_measure.csv", index=False) + if not holdout.empty and not acs_native.empty: + _write_headline(args.out, arms, holdout, acs_native) + _write_dimensions(args.out, arms, holdout, acs_native) + log(f"report: {len(arms)} arm receipts") + + +DIMENSION_COLUMNS = ( + ("income_components", "state"), ("income_components", "cd"), + ("tax_items", "state"), ("tax_items", "cd"), + ("program_receipt", "state"), ("demographics_pep", "state"), +) + + +def _write_dimensions(out: Path, arms: pd.DataFrame, holdout: pd.DataFrame, acs_native: pd.DataFrame) -> None: + """Per-dimension held-out error (seed-0 arms; replicate spread alongside).""" + by_dim = holdout.groupby(["product", "arm", "dimension", "level"])["capped"].mean() + # The release's own objective: loss-weighted capped error over every + # CPS-native held-out target at a level (fixed full-surface weights). + native = holdout[holdout["dimension_group"] == "cps_native"] + weighted = native.groupby(["product", "arm", "level"]).apply( + lambda g: np.average(g["capped"], weights=g["loss_weight"])) + acs = acs_native[acs_native["measure"].isin(HEADLINE_ACS_MEASURES)].copy() + acs["capped"] = acs["rel"].clip(upper=1.0) + acs = acs.groupby(["product", "arm", "level"])["capped"].mean() + rows = [] + for record in arms.itertuples(index=False): + row = {"product": record.product, "arm": record.arm, "budget": record.budget, + "cps_years": record.cps_years, "acs_fill_share": record.acs_fill_share, + "seed": record.seed, "rows": record.rows_total, + "ess_distinct": record.ess_distinct_households} + for level in ("state", "cd"): + row[f"cps_native_weighted.{level}"] = weighted.get((record.product, record.arm, level), np.nan) + for dimension, level in DIMENSION_COLUMNS: + row[f"{dimension}.{level}"] = by_dim.get((record.product, record.arm, dimension, level), np.nan) + for level in ("state", "cd", "county"): + row[f"acs_native.{level}"] = acs.get((record.product, record.arm, level), np.nan) + rows.append(row) + table = pd.DataFrame(rows).sort_values(["product", "budget", "cps_years", "acs_fill_share", "seed"]) + table.to_csv(out / "dimensions_by_arm.csv", index=False) + spread, mean = replicate_summary(table) + spread.to_csv(out / "replicate_spread.csv") + mean.to_csv(out / "replicate_mean.csv") + + +def replicate_summary(table: pd.DataFrame) -> tuple[pd.DataFrame, pd.DataFrame]: + """SD and mean over ACS draws of the 300k ACS-fill arms, per product and + CPS year count; groups with a single draw are left out.""" + replicate = table[table["arm"].str.contains("b300k") & table["acs_fill_share"].eq(1.0) & table["cps_years"].gt(0)] + measures = [c for c in table.columns if "." in c] + seeded = [key for key, g in replicate.groupby(["product", "cps_years"]) if g["seed"].nunique() > 1] + replicate = replicate.set_index(["product", "cps_years"]).loc[seeded].reset_index() + groups = replicate.groupby(["product", "cps_years"])[measures] + return groups.std(), groups.mean() + + +#: Household-universe measures only: the age bands count group-quarters people +#: in both the truth and the ACS rows, and CPS rows have none, which would tilt +#: the average toward ACS arms. Age bands stay in acs_native_by_level_measure.csv. +HEADLINE_ACS_MEASURES = ( + "households", "owner", "renter", "rent_contract_annual_aggregate", + "real_estate_taxes_aggregate", "persons_in_households", +) + + +def _write_headline(out: Path, arms: pd.DataFrame, holdout: pd.DataFrame, acs_native: pd.DataFrame) -> None: + """One markdown table per product: held-out error by dimension and level.""" + cps = holdout[holdout["dimension_group"] == "cps_native"].groupby(["product", "arm", "level"])["capped"].mean() + pep = holdout[holdout["dimension_group"] == "acs_native"].groupby(["product", "arm"])["capped"].mean() + acs = acs_native[acs_native["measure"].isin(HEADLINE_ACS_MEASURES)].copy() + acs["capped"] = acs["rel"].clip(upper=1.0) + acs = acs.groupby(["product", "arm", "level"])["capped"].mean() + lines = [] + for product, frame in arms.sort_values(["budget", "cps_years", "acs_fill_share", "seed"]).groupby("product", sort=False): + lines += [f"### {product} product", "", + "| Arm | Rows | Distinct hh | ESS (distinct) | CPS-native nat | state | CD | PEP demog | ACS-native state | CD | county | Solve min | Peak GB |", + "|---|---|---|---|---|---|---|---|---|---|---|---|---|"] + for row in frame.itertuples(index=False): + key = (product, row.arm) + + def cell(series, level=None, key=key): + index = (*key, level) if level else key + return f"{series.get(index, float('nan')):.3f}" + + lines.append( + f"| {row.arm} | {row.rows_total:,} | {row.distinct_households:,} | {row.ess_distinct_households:,.0f} | " + f"{cell(cps, 'national')} | {cell(cps, 'state')} | {cell(cps, 'cd')} | {cell(pep)} | " + f"{cell(acs, 'state')} | {cell(acs, 'cd')} | {cell(acs, 'county')} | " + f"{row.runtime_solve_s / 60:.1f} | {row.runtime_peak_rss_gb:.1f} |" + ) + lines.append("") + (out / "headline.md").write_text("\n".join(lines)) + + +# ------------------------------------------------------------------ main + + +def main(argv=None) -> None: + parser = argparse.ArgumentParser(description=__doc__.splitlines()[0]) + sub = parser.add_subparsers(dest="command", required=True) + c = sub.add_parser("compile") + c.add_argument("--feed", type=Path, required=True) + c.add_argument("--out", type=Path, required=True) + s = sub.add_parser("shard") + s.add_argument("--source", choices=("cps", "acs"), required=True) + s.add_argument("--h5", type=Path, required=True) + s.add_argument("--design-h5", type=Path) + s.add_argument("--out", type=Path, required=True) + s.add_argument("--households-per-shard", type=int, default=50_000) + s.add_argument("--min-available-gb", type=float, default=20.0) + m = sub.add_parser("materialize") + m.add_argument("--work", type=Path, required=True) + m.add_argument("--source", choices=("cps", "acs"), required=True) + m.add_argument("--summary", type=Path) + m.add_argument("--batch", type=int, default=5_000) + m.add_argument("--only") + m.add_argument("--rank-range", help="ACS only: materialize rows whose selection rank is in [LO,HI)") + m.add_argument("--min-available-gb", type=float, default=20.0) + m.add_argument("--replace-stale", action="store_true", + help="delete and rebuild parts not built from the current shards' source h5") + pc = sub.add_parser("partcheck") + pc.add_argument("--work", type=Path, required=True) + pc.add_argument("--source", choices=("cps", "acs"), required=True) + pc.add_argument("--shards", type=Path, help="shard pickles cut from the same h5 (default: the work directory's)") + pc.add_argument("--summary", type=Path) + pc.add_argument("--parts", help="comma-separated part stems (default: every part)") + pc.add_argument("--per-part", type=int, default=200) + pc.add_argument("--tolerance", type=float, default=1e-5) + pc.add_argument("--batch", type=int, default=5_000) + pc.add_argument("--min-available-gb", type=float, default=20.0) + d = sub.add_parser("diffcheck") + d.add_argument("--work", type=Path, required=True) + d.add_argument("--feed", type=Path, required=True) + d.add_argument("--summary", type=Path, required=True) + d.add_argument("--households", type=int, default=4_000) + d.add_argument("--per-group", type=int, default=40) + d.add_argument("--batch", type=int, default=5_000) + d.add_argument("--sources", default="cps,acs") + t = sub.add_parser("truth") + t.add_argument("--sf-dir", type=Path, required=True) + t.add_argument("--out", type=Path, required=True) + a = sub.add_parser("arm") + a.add_argument("--work", type=Path, required=True) + a.add_argument("--arm", required=True) + a.add_argument("--product", choices=("national", "local"), required=True) + a.add_argument("--truth", type=Path, required=True) + a.add_argument("--epochs", type=int, default=1_500) + a.add_argument("--threads", type=int, default=6) + a.add_argument("--exclude-gq", action="store_true") + a.add_argument("--force", action="store_true", help="re-solve even if a receipt exists") + a.add_argument("--rescore", action="store_true", help="re-score saved weights without re-solving") + a.add_argument("--min-available-gb", type=float, default=20.0) + g = sub.add_parser("grid") + g.add_argument("--no-largest", action="store_true") + g.add_argument("--newest-year", type=int, default=NEWEST_INCOME_YEAR) + rg = sub.add_parser("run-grid") + rg.add_argument("--work", type=Path, required=True) + rg.add_argument("--truth", type=Path, required=True) + rg.add_argument("--products", default="national,local") + rg.add_argument("--epochs", type=int, default=1_500) + rg.add_argument("--threads", type=int, default=6) + rg.add_argument("--only") + rg.add_argument("--no-largest", action="store_true") + rg.add_argument("--newest-year", type=int, default=NEWEST_INCOME_YEAR, + help="newest CPS income year in rows_cps; arms use the newest 1, 2 and 3 years") + rg.add_argument("--min-available-gb", type=float, default=20.0) + f = sub.add_parser("spm-flags") + f.add_argument("--work", type=Path, required=True) + r = sub.add_parser("report") + r.add_argument("--work", type=Path, required=True) + r.add_argument("--out", type=Path, required=True) + r.add_argument("--newest-year", type=int, default=NEWEST_INCOME_YEAR) + r.add_argument("--allow-missing", action="store_true", help="write a report even if receipts are missing") + r.add_argument("--truth", type=Path, required=True) + r.add_argument("--epochs", type=int, default=1_500) + r.add_argument("--allow-stale", action="store_true", help="leave stale receipts out instead of refusing") + args = parser.parse_args(argv) + { + "compile": do_compile, "shard": do_shard, "materialize": do_materialize, + "diffcheck": do_diffcheck, "truth": do_truth, "arm": do_arm, "report": do_report, + "run-grid": do_run_grid, "spm-flags": do_spm_flags, "partcheck": do_partcheck, + "grid": lambda a: print("\n".join(arm.label for arm in arm_grid(not a.no_largest, a.newest_year))), + }[args.command](args) + + +if __name__ == "__main__": + main()