Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Load the ACS local-area dataset for US state and district runs

Ouverte
#717 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

  • #726 par @anth-volk — fermée sans fusion

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Active
Stack technique
python

Piste de recherche

Start with _region_parent_dataset_reference and _resolve_region in projects/policyengine-simulation-executor/src/policyengine_simulation_executor/simulation_runtime.py, then inspect runtime_dataset_uri(...) and the linked build_populace_state_slices.py approach. Done means state and district runs use validated local-area extracts with linked groups and unchanged weights, while the resolved URI preserves the overlay revision and sha256.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Problem

Every US state/xx and congressional-district run executes on the national default file. In projects/policyengine-simulation-executor/src/policyengine_simulation_executor/simulation_runtime.py:

  • _resolve_region (lines 317–360) uses region.dataset_path when it is set.
  • Otherwise _region_parent_dataset_reference (lines 276–301) walks up to the national region and returns its dataset.

policyengine.py state and district regions carry no dataset_path, so the fallback always applies (PolicyEngine/policyengine.py#551).

What changes once regions carry the local-area dataset

PolicyEngine/policyengine.py#551 proposes resolving state and district regions to populace_us_2024_acs_local.h5. The executor would then receive that file for every state run:

  • Size: 9.8 GB. It covers 1,588,854 households (Sep 23 build 767312d60).
  • Memory: our Modal jobs needed a 64 GB container to load it and extract one state.
  • Per-state counts: Pennsylvania alone is 64,981 households. Child-poverty-impact-dashboard slices range from 3.4k households (WY) to 163k (CA).

Suggested direction

  • Build per-state extracts once per local-area release, keeping every linked person, tax unit, SPM unit, family and marital unit, with weights unchanged. Run state and district requests on the extract.
  • PolicyEngine/child-poverty-impact-dashboard scripts/build_populace_state_slices.py does this for 51 states. It checks that slices partition the frame exactly and that no group straddles a state boundary. It also verified a 2021-CTC reform on all 51 slices against masked full-file runs (population and transfer total within 1e-6, poverty rates within 1e-4).
  • Confirm the resolved URI keeps the overlay's own revision and sha256. Today runtime_dataset_uri(...) passes bundle.data_artifact_revision (the national artifact's revision) as the artifact revision, so check that it does not override the local-area pin.

Related

  • Region wiring: PolicyEngine/policyengine.py#551
  • API v1 state reports: PolicyEngine/policyengine-api#3864
  • Weight concentration on the local-area build: PolicyEngine/microcosm#403

🤖 Generated with Claude Code

Langage dominant
Python
Étoiles
1
Forks
1
Merge moyen
1 j 19 h
PR mergées (30 j)
77

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de PolicyEngine/policyengine-sim-api

Toutes les issues de PolicyEngine/policyengine-sim-api

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.