Dime a quiénes te pareces y te diré a quién votas. Parte II

La semana pasada estalló en las redes, medios de comunicación y charlas entre compañeros de trabajo la aplicación aquienvoto.uy, un test que recomienda al usuario a qué candidato votar en las próximas elecciones.
Básicamente el usuario debe indicar puntuando del 1 al 5 (1 “en desacuerdo”, 3 “neutral/no lo sé” y 5 “totalmente de acuerdo”) 26 afirmaciones sobre economía, seguridad y sociedad. Con esas respuestas la aplicación indica a qué candidato votar.
En la parte anterior expliqué con un ejemplo cómo es que funciona el algoritmo, en esta oportunidad voy a analizar las respuestas de los usuarios y en la tercer y última parte desarrollaré otros modelos de clasificación, basándome en algoritmos distintos al KNeighborsClassifier.

Hands on!

Teniendo las respuestas de todos los usuarios que respondieron el formulario a la mano, no me quedó más remedio que ponerme a trabajar con esos datos (disculpen, es deformación profesional).
Cloné el repositorio de GitHub e hice una pequeña transformación en Pentaho Data Integrator para pasar los datos de los csv a una base de datos SQL Server y a su vez “pivotearlos” para tener una tabla donde cada columna represente cada una de los usuarios que respondieron el formulario:

De esta forma es como quedan los datos de la encuesta “pivoteados” donde hay una única fila por encuesta contestada:

Vale aclarar que los datos obtenidos fueron de 123.119 encuestas distintas. Lamentablemente, de toda esa cantidad, únicamente 25.166 usuarios seleccionaron a su candidato al final del formulario.
Lo primero que me resultó interesante saber fue qué partido político prefiere las personas que contestaron el formulario:

Podemos hacer el mismo análisis, pero por candidato

¿En qué coincidimos los uruguayos, en qué estamos “totalmente de acuerdo”?
Me resultó interesante averiguar cuáles fueron las preguntas que tuvieron más votaciones positivas:

Las cuatro afirmaciones que tuvieron en promedio una valoración superior a 4 son las que se observan en la imagen superior.
Si vemos cómo se distribuyeron los votos de los uruguayos en la afirmación en la que mayoritariamente estamos todos de acuerdo se observa lo siguiente:

¿En qué coincidimos los uruguayos, en qué estamos “en desacuerdo”?
Las 4 afirmaciones que los encuestados respondieron con puntajes más bajos son las siguientes:

Veamos cómo se distribuyen los puntajes votados con relación a la afirmación “La legalización del aborto fue un error”

¿Cuáles son las afirmaciones en las que los uruguayos no nos ponemos de acuerdo?
Me pareció pertinente hallar la desviación estándar de las preguntas para ver cuáles son las más polémicas:

Analicemos en mayor detalle los votos otorgados a la afirmación “La pena de muerte debería ser una opción para los crímenes más serios.” que es la que genera más discordia:

Se ve claramente que la votación está bien dividida.

En la próxima entrega de este artículo seguiré profundizando en el análisis de las preguntas, en particular para ver cuáles son las afirmaciones que dividen más a los votantes del oficialismo frente a los votantes de la oposición y también crearé modelos de clasificación utilizando los algoritmos Random Forest y Reglas.

Héctor Cotelo  @CoteloHector

Consultor en Data Analytics & Information Management

Leave a Reply