Un chiffre affiché sans méthode n'est qu'une affirmation. Cette page décrit, en français courant, comment chaque statistique de MonÉlu est calculée : la formule exacte, le code source qui l'implémente, et ses limites connues. Aucun calcul n'est fait « à la main » ni ajusté au cas par cas - tout part des données publiques de l'Assemblée nationale et suit une règle unique, appliquée de la même façon à chaque député et chaque groupe.
Le taux de présence d'un député compte toute position enregistrée lors d'un scrutin : pour, contre, abstention, et non-votant. Un député « non-votant » était présent dans l'hémicycle sans exprimer de vote - c'est une particularité documentée des données de l'Assemblée, pas une absence.
Le dénominateur n'est pas « tous les scrutins depuis juillet 2024 » mais uniquement les scrutins tenus pendant le mandat du député (entre sa date de début et sa date de fin de mandat, le cas échéant). Un député élu en cours de législature n'est donc pas pénalisé pour des votes antérieurs à son entrée en fonction.
Ce calcul unique est la seule définition de la présence utilisée sur MonÉlu - l'API, l'assistant de recherche et les fiches députés s'y conforment tous. C'est pourquoi Yaël Braun-Pivet, Présidente de l'Assemblée nationale, affiche 100 % de présence : elle est recensée sur chaque scrutin par construction des données de l'AN.
Source : mart_deputy_scorecard.sql · ADR-019, décision architecturale
L'Assemblée nationale compte 577 sièges. Le compteur « députés suivis » affiché sur MonÉlu dénombre l'ensemble des député·e·s ayant siégé au moins une fois depuis le début de la XVIIᵉ législature (7 juillet 2024) - y compris celles et ceux remplacé·e·s en cours de mandat (décès, nomination au gouvernement, invalidation d'élection). Ce total est donc naturellement supérieur à 577.
Pour chaque scrutin, MonÉlu calcule la position majoritaire du groupe parlementaire du député (pour, contre ou abstention - les non-votants ne comptent pas dans ce calcul). Un vote du député est dit « dissident » lorsque sa position diffère de celle-ci.
Limite connue : l'historique complet du député est comparé à son groupe parlementaire actuel, même s'il en a changé en cours de mandat. Un député ayant changé de groupe verra donc ses votes antérieurs au changement évalués par rapport à son nouveau groupe, pas celui auquel il appartenait au moment du vote.
En cas d'égalité stricte entre deux positions au sein d'un groupe (par exemple 40 pour / 40 contre), le départage suit une règle déterministe et documentée dans le code plutôt qu'un résultat arbitraire dépendant de l'ordre de retour de la base de données.
Source : mart_party_alignment.sql · int_party_vote_majority.sql
Le quiz compare vos réponses aux positions réellement enregistrées de chaque député sur les mêmes scrutins. Votre pourcentage d'accord avec un député est simplement : nombre de scrutins où vous avez voté pareil, divisé par le nombre de scrutins comparables. Seules les positions exprimées comptent (pour, contre, abstention) : un député non-votant ou absent sur un scrutin n'est ni d'accord ni en désaccord avec vous - ce scrutin est simplement retiré du dénominateur pour ce député.
Seuil de comparabilité : un député (ou un groupe) n'apparaît dans le classement que s'il a une position exprimée sur au moins la moitié de vos réponses, avec un minimum de deux scrutins - un seul scrutin partagé ne fait pas un profil politique. Même règle pour le « député le plus éloigné » : un 0 % calculé sur deux votes ne peut pas faire la une du résultat.
L'accord avec un groupe parlementaire se calcule contre sa ligne majoritaire, scrutin par scrutin : la position exprimée la plus fréquente parmi ses membres. Si deux positions sont à égalité stricte au sein du groupe, le groupe n'a pas de ligne sur ce scrutin et il est ignoré pour ce calcul.
Le questionnaire est un ensemble d'une dizaine de scrutins réels, choisi selon trois critères : des votes sur l'ensemble d'un texte (pas des amendements), une forte participation (au moins 400 votants sur 577), et un vrai clivage (le camp minoritaire pèse au moins 35 % des pour+contre exprimés). La sélection est versionnée (par exemple « 2026-Q3 »), revue trimestriellement, et chaque résultat partagé garde la version du questionnaire qui l'a produit. La formulation des questions reste descriptive du texte voté, jamais orientée.
Vie privée : le calcul se fait côté serveur mais rien n'est enregistré - ni vos réponses, ni votre code postal. Seul un résultat que vous choisissez explicitement de partager est stocké, et il est alors recalculé par le serveur à partir de vos réponses : une carte de résultat MonÉlu ne peut pas contenir de pourcentages fabriqués.
Source : quiz.py · quiz_data.py (questionnaire versionné) · ADR-025, décision architecturale
Le résultat d'un scrutin (adopté ou rejeté) n'est jamais recalculé par MonÉlu : il est repris tel quel du champ officiel publié par l'Assemblée nationale pour ce scrutin. La 17ᵉ législature n'ayant pas de majorité stable, les scrutins rejetés sont, à ce jour, plus nombreux que les scrutins adoptés.
Source : stg_votes.sql
La base de production couvre les scrutins depuis le 1er juillet 2025 (limite de l'offre gratuite de la base de données hébergée ; l'historique complet depuis le début de la législature, le 7 juillet 2024, est disponible en environnement de développement).
Les données sont actualisées automatiquement chaque jour ouvré à 6h UTC : ingestion des nouveaux scrutins et fiches de députés, reconstruction de l'index de recherche sémantique, puis recalcul des statistiques agrégées (présence, alignement, scorecards).
L'intégralité du code de transformation des données (ingestion, agrégation, API) est publique. Le schéma de dépendances entre les modèles de données (lineage) est généré automatiquement à chaque modification :
Écrivez à walidelkhoukh99@gmail.com en précisant le député, le scrutin ou la page concernée. Toute correction de méthode fait l'objet d'une mise à jour de cette page.