SPB Git forge

spb/qc-election

Public
20commits 1branches 0releases
4.9 MBsize
maindefault branch
20 days agolast push
Python 66.6% HTML 24.8% CSS 4.9% JavaScript 3.6%
3.3 KB

# POPULATION FEATURES — plan du feature store démographique (Phase D)

Objectif : data/population/riding_2026_demographics.(csv|parquet) — une ligne par circonscription 2026 avec les distributions nécessaires au MRP et aux facteurs géographiques. RÈGLE : ne jamais inventer une variable absente des données; ne jamais utiliser une circonscription FÉDÉRALE comme proxy d'une provinciale.

# Géographie (le cœur du problème)

La carte provinciale 2026 (127) est NOUVELLE (délimitation 2025) — aucun profil de recensement prêt n'existe pour elle.

Méthode retenue (ADDENDUM §4) :

  1. Aires de diffusion (AD, ~5 000 hab. max) du Recensement 2021 — géométries StatCan (fichier des limites, format cartographique).
  2. Intersection géométrique AD × GeoJSON DGEQ 2026 (127) — shapely.
  3. Interpolation pondérée par la POPULATION des AD (population-weighted; area-weighted en repli quand l'AD chevauche plusieurs circonscriptions).
  4. Contrôles : somme des populations interpolées ≈ population du Québec; comparaison aux électeurs inscrits DGEQ par circonscription.

# Variables (Recensement 2021 — profil des AD)

Variable Source (profil 2021) Transformation Usage prévu
population, pop. 18+ StatCan somme pondérée poids MRP, participation
âge (18-24/25-34/35-44/45-54/55-64/65+) StatCan parts cellules MRP, z_age
genre StatCan parts cellules MRP
langue maternelle (fr/en/autre) + connaissance fr-en StatCan parts cellules MRP, z_franco
immigration, période d'immigration StatCan parts features géo
revenu médian des ménages StatCan niveau + z features géo/éco
scolarité (universitaire) StatCan part + z features géo
locataires / propriétaires StatCan parts + z features géo (logement)
densité, urbain/rural StatCan (géo) niveau + z facteurs latents
chômage StatCan taux + z fondamentaux locaux

Standardisation : z_* = (x − moyenne des 127) / écart-type — pour le moteur de similarité de circonscriptions (§29 : top-10 semblables, partial pooling).

# Cellules MRP (§5)

circonscription × âge(6) × genre(2) × langue(3) = 127 × 36 cellules au départ (éducation/tenure ajoutées seulement si l'identification le permet). Partial pooling obligatoire; cellules quasi vides fusionnées.

# Vieillissement 2021 → 2026 (§30)

Base 2021 + ajustement par les estimations démographiques ISQ/StatCan (région), avec incertitude explicite. Jamais l'affirmation que la population 2026 = 2021.

# Déjà en place (amorce)

  • Électeurs inscrits par circonscription : conservés depuis le GeoJSON DGEQ brut quand la propriété est publiée (ingest/elections_quebec.refresh_electors, stockés dans districts.notes.electors).
  • Participation 2022 par circonscription (districts.turnout_2022).
  • Régions de modélisation (13) et baselines 2022/2018 par circonscription.

# Non-objectifs

Pas de minorités visibles ni de variables sensibles sans justification méthodologique documentée; pas de coefficients démographiques inventés.