Patrones de voto de tus congresistas

Estuve pensando en alguna manera de visualizar el patrón de voto de nuestros congresistas en base a las más recientes (y polémicas) votaciones, en contra de los gays y a favor de escoger miembros del Tribunal Constitucional en base a una vil #repartija.

Me bajé la lista de congresistas de la web del congreso http://www.congreso.gob.pe/organizacion/pleno.asp?mode=Pleno y realicé una edición de la lista para considerar Apellido Paterno Apellido Materno y Primer Nombre para cada uno. Los espacios fueron reemplazados con subguión.

Algo así:

Abugattás_Majluf_Daniel
Acha_Romaní_Walter
Acuña_Núñez_Richard
Acuña_Peralta_Virgilio
Aguinaga_Recuenco_Alejandro
Alcorta_Suero_María
Andrade_Carmona_Fernando
Angulo_Álvarez_Roberto
Anicama_Ñañez_Elsa
Apaza_Condori_Emiliano
Apaza_Ordóñez_Justiniano

Podemos convertir la votaciones de cada congresista a modo binario. El voto a favor de una buena propuesta se puede codificar con 1 (a favor de incluir orientación sexual en la lista de crímines de odio; en contra de elegir a Cayo Galindo, Víctor Mayorga, Rolando Sousa, Francisco Eguiguren, José Luis Sardón y Ernesto Blume como magistrados del Tribunal Constitucional). Se puede codificar con 0 los que votan a favor de malas propuestas. Los ausentes por licencia, ausentes y abtenciones se pueden codificar con signo de interrogación «?»).

Además modifiqué el archivo para que esté en formato NEXUS y pueda ser leído por el programa filogenético llamado PAUP.

Algo así:

#NEXUS

BEGIN DATA;
DIMENSIONS NTAX=130 NCHAR=2;
FORMAT DATATYPE=STANDARD MISSING=? GAP=-;
MATRIX

Abugattás_Majluf_Daniel           ??
Acha_Romaní_Walter                ?0
Acuña_Núñez_Richard               10
Acuña_Peralta_Virgilio            1?
Aguinaga_Recuenco_Alejandro       00
Alcorta_Suero_María               00
Andrade_Carmona_Fernando          00
Angulo_Álvarez_Roberto            00
Anicama_Ñañez_Elsa                ?0
Apaza_Condori_Emiliano            00
Apaza_Ordóñez_Justiniano          00

El archivo completo está aquí.

Ingresé a PAUP, leí el archivo y pedí que ejecute el algoritmo conocido como Neighbor-joining que consiste en agrupar en un dendrograma los congresistas que se parezcan más según los votos que hayan emitido (favor, contra) o hayan estado ausentes.

# Entrar a PAUP y leer el archivo de datos
paup> execute congresistas.txt

# Ejecutar el algoritmo Neighbor-joining
paup> nj;

# Guardar el dendograma en directorio actual
paup> savetree file=congresistas.tre format=altnexus;

Guardé el dendograma en un archivo aparte para dibujar el dendrograma usando el paquete estadístico R y la librería APE. El dendrograma se guarda en un archivo PDF:

library(ape);
x <- read.nexus("congresistas.tre");
pdf(file="congresistas_cluster.pdf", paper="a4", width=11);
plot(x, cex=0.22);
dev.off();

Bájate el archivo resultante congresistas_cluster.pdf si deseas.

También se puede convertir el PDF a imagen y colorear los grupos de congresistas. Por ejemplo podemos colorear de verde el grupo de congresistas «buenos» (los que han votado a favor de gays y se abstuvieron de votar por los miembros del TC).

Es interesante comparar mi lista de congresistas «buenos» con aquellos de la «Lista de honor» compilada por el usuario de Scribd comunicadociudadano como resultado de un crossover de los congresistas que votaron en contra de los gays y favor de la #repartija.

Mi lista de congresistas «buenos» es más liberal ya que, por ejemplo, da el beneficio de la duda a la congresista fujimorista Leyla Chihuán que no votó por magistrados del TC porque se encontraba de licencia.

He coloreado de amarillo los congresistas «masomenos» que votaron «bien» en al menos una de las votaciones. Por ejemplo el congresista Sergio Tejada votó a favor de los gays pero votó a favor de elegir a los miembros del TC. Muchos están decepcionados de Tejada, pero por ahora no está tan mal (estaremos vigilando).

El resto de congesistas son «malos» porque votaron «mal» en las dos ocasiones o se abstuvieron de votar debido a ausencias, licencias y/o abstenciones voluntarias.

dendrograma de congresistas

Dendrograma de congresistas. Hacer click para agrandar.

Sería intersante agregar los resultados de votaciones adicionales para tener más columnas, más datos y ver si salen patrones más interesantes. Por ejemplo podríamos identificar al «congresista más bueno» (aquel que vota «bien» en todas las ocasiones) así como al «congresista más malo» (aquél que siempre vota «mal»).

El «big data» que nos hablaba el amigo útero.pe

Podríamos tener esta lista y dendrograma actualizados antes de las elecciones del 2016, para que eligas mejor a tus congresistas, sí tú, amigo lector.