L'arbre phylogénétique des députés français

De même que l'arbre de la vie permet de représenter différentes espèces en rapprochant celles qui descendent d'un même ancêtre commun, ou ont un ADN similaire, voici l'arbre phylogénétique des députés français construit selon la proximité de leurs votes lors de 43 scrutins publics à l'Assemblée Nationale (du 26 octobre 2004 au 12 décembre 2006).
Le terme "arbre phylogénétique" est employé ici au sens large, pour être précis il faudrait plutôt parler d'analyse arborée des votes des députés.

Des liens sur ce sujet :

Arbre phylogénétique des députés français


Légende

La taille des feuilles est liée au nombre de députés (ayant voté de la même façon) qu'elles représentent. Pour chercher un député, soit vous arrivez à trouver son nom sur l'arbre, soit il fait partie d'une feuille contenant plusieurs députés. Dans les deux cas, faites "CTRL-F" pour localiser dans la liste ci-dessous le député recherché, vous trouverez alors un lien vers sa fiche sur le site de l'assemblée nationale.


Détails techniques

Collecte des données

Un tableau de synthèse a été construit à partir des pages web concernant les scrutins publics accessibles depuis les pages suivantes : 2004/2005, 2005/2006, 2006/2007. Ces pages font apparaître en note certaines précisions sur les scrutins (tel député aurait voulu voter de telle façon) qui n'ont pas été prises en compte. D'autre part, certains noms ne correspondant pas à la liste actuelle des députés ont été corrigés.

Chaque page a subi un prétraitement manuel pour obtenir des fichiers analysables automatiquement pour obtenir ce tableau de synthèse (1 = vote CONTRE, 2 = ABSTENTION, 3 = vote pour, rien = ABSENCE).

Distance utilisée

La distance de vote entre deux députés est mise à jour à chaque scrutin par l'opération suivante : Le tableau des distances obtenu présente donc de nombreux zéros qui sont élagués naïvement : si deux députés i et j sont à distance nulle, il est possible qu'à cause de leurs absences ils n'aient pas tous deux exactement les mêmes distances aux autres députés (d(i,k) différent de d(j,k)), dans ce cas on choisit d(i+j,k) = max(d(i,k),d(j,k)).

Une variante permet de prendre en compte les absences des députés : ajouter +0.25 à la distance si un des deux députés était absent à un scrutin. Ainsi, on obtient plus de députés à distance non-nulle les uns des autres, et donc un arbre phylogénétique à environ 500 sommets (pas super efficace, comme moyen de visualisation...).

Construction de l'arbre

La matrice de distance est alors convertie au format NEXUS et fournie au programme SplitsTree 4.6 [3], qui calcule l'arbre obtenu par l'algorithme BioNJ [2]. Les feuilles de cet arbre sont alors étiquetées, colorées selon le parti d'un des députés qu'elles représentent (UMP en rouge, UDF en orange, PS en rose, communistes et républicains en rouge, couleurs pâles si le député est seulement proche du parti d'après les indications du site de l'Assemblée Nationale), et le diamètre des cercles est modifiée proportionnellement au log du nombre de députés qu'ils représentent.

L'arbre est ensuite dessiné avec 100 itérations de l'algorithme SpringEmbedder [1] puis amélioré manuellement dans SplitsTree afin d'obtenir ce fichier NEXUS.

Avertissements, nuances, remarques

Je passe un peu vite ci-dessus sur un problème important : "le tableau des distances obtenu présente donc de nombreux zéros qui sont élagués naïvement".

Tout le problème vient des absences des députés (en particulier, pour les motions de censure...) ! Et le régler de façon tout à fait correcte n'était pas trivial. Le principe que j'ai choisi est que quand un député était absent (pas mentionné dans le scrutin), je n'augmente pas sa distance par rapport aux autres députés... Ce qui a le premier désavantage de n'accorder aucun poids au vote des mentions de censure ! Allez, soyons un peu technique... Puisqu'il n'est fait aucune distinction entre "ABSENT", "CONTRE", et "ABSTENTION" par rapport à la motion, finalement, prendre en compte la motion de censure ne change rien aux distances !

Dans le même genre, imaginons que :
A vote POUR à la loi 1, CONTRE à la 2,
B vote POUR à la 1, absent à la 2,
C vote POUR à la 1, POUR à la 2.

J'ai donc comme distances :
d(A,B) = 0,
d(B,C) = 0,
d(A,C) = 0.

Et quand je fais mes "élagages naïfs de zéros", si je commence par traiter A, je vois d(A,B) = 0, je me dis : ah, mais alors A et B sont dans la même feuille ! Alors que si je commence par traiter C, je vois d(A,C) = 0, je me dis : c'est A et C qui sont dans la même feuille. Enfin, le cas le pire (que j'ai essayé d'éviter en traitant à la fin les députés souvent absents...) si je commence par B, je vois : d(A,B) = 0, puis d(B,C) = 0, et alors je me dis > A et C sont dans la même feuille que B. Argh...

Pour régler le problème, et distinguer ABSENCE et ABSTENTION, c'est vraiment pas simple. J'ai donc choisi de mettre tout de même en ligne l'arbre pour l'information qu'il permettait tout de même de déduire. Et de remettre à plus tard le réglement de ces problèmes. A priori, j'ai pas mal de littérature à étudier, le problème a dû être traité en bioinfo, où certains gènes sont parfois absents chez certaines espèces...

Autre problème lié à l'interprétation "fine" de l'arbre : certains députés qui se sont trompés lorsqu'ils ont voté (ou bien les gens qui les représentaient) ! J'ai pris en compte le vote final, et pas l'intention de vote... Cela concerne en particulier Ségolène Royal, et explique qu'elle ne se retrouve pas dans le gros "groupe PS".

Alors bon, pour une interprétation fine, on peut toujours se référer au tableau de synthèse qui est plus facile à lire que la liste des votes des députés sur le site de l'Assemblée.

Une autre visualisation : la puce ADN

Cliquez dessus pour avoir les détails (et attention aux interprétations hâtives !) :

L'explosion de l'UDF illustrée sur l'arbre

Cliquez dessus pour avoir les détails :

Bibliographie

[1] Philippe Gambette, Daniel H. Huson: Improved layout of phylogenetic networks, à paraître dans TCBB.
[2] Olivier Gascuel: BIONJ: an improved version of the NJ algorithm based on a simple model of sequence data, Molecular Biology and Evolution, 14:685-695, 1997.
[3] Daniel H. Huson and David Bryant: Application of Phylogenetic Networks in Evolutionary Studies, Molecular Biology and Evolution, 23(2):254-267, 2006, logiciel téléchargeable sur http://www.splitstree.org.


Liens







Construit avec
SplitsTree