Skip to content

Conversation

@AMin-dSet
Copy link
Collaborator

@AMin-dSet AMin-dSet commented Dec 1, 2025

Élus et Nuances Politiques

Ce document récapitule la chaîne de transformation visant à lier les données des élus aux nuances politiques correspondantes au niveau communal, départemental et régional.

1. Sources de Données

Les modèles d'entrée sont des vues Bronze qui nécessitent des nettoyages spécifiques pour garantir l'intégrité et la joignabilité des données géographiques.

Source Description Spécificité / Transformation
presentation_elus_communes Liste complète des élus (communal, régional, départemental). Nettoyage reg_code : Normalisation en format texte sur 2 chiffres avec zéros à gauche (lpad(trunc(reg_code::numeric)::text, 2, '0')).
presentation_elections_municipales Candidats aux municipales. Nettoyage code_officiel_commune : Normalisation pour les codes à plus de 5 chiffres (ex: Outre-mer) par suppression du 3ème caractère.
presentation_elections_departementales Candidats aux départementales. Source Data.gouv pour cette table car les données Opendata ne sont pas à jour
presentation_elections_regionales Candidats aux régionales. Nettoyage et Conversion reg_code : Certain reg_code sont vides, pour les outres mers(ZA/ZB/ZC/ZD -> 01/02/03/04) et pour la commune 'Les Trois Lacs' (dep_code = '27' vers reg_code = '28').
corresp_codes_nuances Seed dbt. Table de correspondance fournissant le libellé complet pour chaque code_nuance politique.

2. Transformations Intermédiaires (Silver)

Ces modèles créent des dimensions de nuance uniques en joignant les résultats électoraux au seed corresp_codes_nuances.

Modèle Silver Description Transformations Clés
vw_silver_presentation_dim_nuance_politique_com Nuance politique des candidats aux municipales. Jointure des résultats municipaux sur corresp_codes_nuances via code_nuance.
vw_silver_presentation_dim_nuance_politique_dep Nuance politique des binômes aux départementales. Identique au modèle communal, appliqué aux données départementales.
vw_silver_presentation_dim_nuance_politique_reg Nuance politique des têtes de liste aux régionales. Utilisation de la macro split_last_and_first_name pour séparer les colonnes Nom et Prénom de la tête de liste avant la jointure.
vw_silver_presentation_elus_communes Liste filtrée des élus. Filtrage de la source presentation_elus_communes pour ne garder que les mandats 'Départemental', 'Municipal', 'Régional'. Renommage de filename en type_de_la_fonction.
silver_presentation_elus Modèle pivot pour l'ajout de la nuance politique. Jointures conditionnelles : Ajout de la nuance politique (libelle_nuance) uniquement pour les fonctions de Maire, Président CD, Président CR en utilisant le code géographique correspondant.

3. Modèle de Présentation (Gold)

Modèle Gold Description Transformations Clés
gold_presentation_elus Modèle final. 1. Création de la Clé Géographique (codgeo) : Normalise la clé géographique selon le niveau de fonction (Maire = com_code, Président CD = dep_code, Président CR = regXX). 2. Nettoyage de la Nuance : Si la nuance est NULL, la valeur est remplacée par la chaîne 'Non connu'. 3. Renommage : Simplification des noms de colonnes (prenom, nom, fonction, libelle).

AMin-dSet and others added 16 commits October 19, 2025 21:03
…ded fields. Create dim_nuance_politique in order to get one row per elected people ( If an elected official has multiple code_nuance values, we will keep the one with the highest ID)
…t first round data (and not second one) since 90% of peoples are elected after the first round. Now gold_presentation_elu_com has 95% of match for 'nuance_politique'
…nquants dans les couches silvers + refactoring pour n'avoir qu'un modèle gold
…and correct/adapt the wrong codes for DROM's
@ThomGram
Copy link
Collaborator

ThomGram commented Dec 9, 2025

Hello,
Merci pour le travail :)

Quelques petites questions. Je crois que ça a été abordé en meeting, ça vaudrait peut-être le coup de documenter plus en détails.

  • Pourquoi se limiter au premier tour des élections? 90% des maires sont élus au premier tour mais avec 36 000 communes je ne suis pas sûr que l'argument soit pertinent. Je ne comprends pas 'garantissant l'information politique'. La logique est en plus appliquée au niveau départemental et régional

  • Pourquoi mélanger des donnée Opendatasoft et data.gouv? Ne peut-on pas utiliser seulement data.gouv ou Registre National des Elus (RNE)?

  • Pourquoi le 3eme caractère est supprimé quand il y a plus de 5 caractères pour le code géo? C'est uniquement pour les Outres-mer?

  • Pourquoi le code dépertemental 27 devient code région 28? Pas de cas similaire pour d'autres régions/départements?

Bonne soirée

@AMin-dSet
Copy link
Collaborator Author

Hello, Merci pour tes retours Thomas, j'ai maj la doc pour préciser tout ça:

  • La source presentation_elus_communes correspondait à celle du 2eme tour et donc une grande majorité des données sur les élus ne sont plus présentes. C'est pourquoi j'ai cahngé la source aux données du premier tour (ce qui inclue toutes les données)
  • J'ai gardé la source initial Opendatasoft à laquelle j'ai compété une table datagouv (presentation_elections_departementales), car pas à jour dans Opendatasoft
  • Oui uniquement pour les outre-mer
  • Dans presentation_elections_regionales, reg_code NULL uniquement pour la commune 'Les Trois Lacs' et les outre-mer

@ThomGram ThomGram merged commit c5b354f into main Dec 15, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants