Recientemente tuvimos la oportunidad de analizar los diferentes programas electorales utilizando minería de textos y técnicas de Procesamiento del Lenguaje Natural.
Pero, ¿qué ocurre con un programa electoral cuando se convierte en Programa de Gobierno, habiendo tenido que pasar por una negociación para conformar una coalición? Vamos a intentar encontrar en qué ha impactado al programa original del PSOE la incorporación de su socio de gobierno Unidas Podemos.
Una vez descargado el programa de Gobierno, procedemos a la preparación y limpieza de la información para su posterior tratamiento, al igual que hicimos en su momento con los programas electorales.
Las tareas básicas consisten en eliminar cualquier elemento que no sea texto (puntuaciones, dígitos en este caso, etc.) , eliminar espacios innecesarios y convertir todo a minúsculas. Además, quitamos todas las palabras que no aportan significado al texto desde el punto de vista analítico (artículos, adverbios, etc.), así como palabras concretas que no aportan en este contexto en particular.
Hay que detectar y resolver ad-hoc términos que conforman bigramas obvios : «Formación Profesional» como «fp», «Comunidades Autónomas» como «ccaa», «I+D+I» (Investigación Desarrollo e Innovación) como «InDesIn», etc, ya que ocultarían la existencia de los bigramas relevantes.
Además es recomendable agrupar por lexemas para descartar declinaciones, los tiempos verbales, el género en ciertos casos y el número gramatical. También es necesario ajustar palabras para mejorar la claridad del análisis, «Europa» y «europea» concentradas como «europa» (y en minúsculas) o «España» y «española» como «españa», etc. Esto debe tenerse en cuenta a la hora de leer los resultados, que a veces pudieran parecer tener incongruencia de género, número, etc
Recurrimos de nuevo a las librerías habituales, principalmente «pdftools» para la extracción de textos, «tidytext» para su tratamiento, «igraph» para la generación de grafos, y «ggplot» y «wordcloud» para las diferentes visualizaciones.
El programa de Gobierno
Para empezar, y desde un punto de vista cuantitativo, veamos la dimensión -en número de palabras utilizadas-, del programa de Gobierno, resultante de la negociación de medidas, en comparación con los programas originales de las dos formaciones implicadas.

Una de las primeras cosas que podemos hacer es calcular la correlación en el uso de términos entre los tres programas. Ya la conocíamos del análisis del 10N para la relación entre los programas de PSOE y Unidas Podemos, pero, ¿y entre ellos y el nuevo programa de Gobierno?
La función «ggpairs» nos muestra las correlaciones cruzadas entre todos los programas, en función de las frecuencias de uso de palabras.

Como era previsible, el programa de Gobierno sigue la estructura del original del PSOE (88,2%), pero sin duda parece haber incorporado los suficientes puntos como para mejorar la correlación de Podemos con el programa original del PSOE en hasta 10 puntos (80,1%).
Veamos al detalle la relación de proporciones de uso de palabras, para empezar, entre los programas electorales originales de ambos partidos. Los ejes reflejan la proporción de uso de las palabras en cada documento. La línea diagonal nos muestra el eje de similitud entre los programas en cuanto a la frecuencia de uso de palabras. A mayor dispersión de puntos, menor similitud entre programas (menos correlación).

Observamos una cierta dispersión, recordemos que estamos viendo una correlación del 70,9%.
En cambio, si comparamos el programa de Unidas Podemos con el programa de Gobierno, podemos advertir un alineamiento algo mayor.

Pero no tanto lógicamente, como cuando comparamos el programa de Gobierno al propio programa del PSOE, en los que la correlación en el uso de términos alcanza el 88,2%.

Sin embargo, en este caso ya empezamos a detectar términos con cierta diferencia en la proporción de uso, que nos indica el impacto de la suma de medidas de la coalición («contratación» -en el sentido laboral- con más presencia relativa en el programa de Gobierno, o «digital» , «fp» («Formación Profesional») y «europa» con más presencia relativa en el programa original.
PSOE en el programa electoral y programa de Gobierno
Podemos ver de una manera rápida los principales términos más frecuentes de ambos programas utilizando «wordcloud».
Aquí la nube resultante del programa original del PSOE,

y aquí la relativa al programa de Gobierno

Las aportaciones de cada programa
Podemos comparar al detalle con el top de palabras empleadas en cada programa. En el centro de la gráfica aparece el programa de Gobierno, en el que vemos cómo se han integrado diferentes términos de ambos programas originales. También existen términos que aparecen en el programa de Gobierno sin haber estado antes entre los más empleados individualmente.

Utilizando bigramas logramos más claridad, aunque las frecuencias de aparición conjunta son más reducidas

Palabras más relacionadas
Los grafos son una herramienta muy útil cuando existe mucha cantidad de información de relaciones entre elementos. En nuestro caso, los bigramas son relaciones entre 2 palabras, medidas además por la frecuencia de ocurrencia.
La librería «igraph» nos permite mostrar estas relaciones de manera muy gráfica. Vemos a la izquierda el grafo relativo al programas electoral del PSOE y a la derecha el del programa de Gobierno.
Revisando a cierto detalle podremos observar cadenas de términos más o menos desarrolladas en un programa u otro.

Por último, si aplicamos una visualización con grafos de correlación entre palabras podemos ver mayores especificidades : las palabras que aparecen juntas en los programas en mayor medida a la que aparecen junto a otras palabras.
Se muestra también, a la izquierda el programa electoral del PSOE y a la derecha el programa de Gobierno, para palabras con correlación mayor de 0,3.

Sobre cuestiones concretas
Dado que podemos extraer el grado de asociación entre palabras, bien sea por frecuencia o correlación, es posible llegar al detalle del nivel de relación de cualquier término con el resto de los que suelen aparecer junto a él, y de esta manera, observar el contexto en el que aparece dicho término habitualmente.
Y si elegimos los términos adecuados, podemos hacer un repaso rápido de cómo reflejan los programas algunas de las cuestiones que aparecen en el Barometro del Centro de Investigaciones Sociológicas (CIS). En este caso, los principales problemas actuales para los encuestados.
Sanidad
Todos los sinónimos de Sanidad, como «sanitario»,»Sistema Nacional de Salud» ,etc han sido agrupados bajo el término «sanidad», de manera que podemos ver cuáles son las palabras que aparecen asociadas con mayor frecuencia en los programas originales y, como vemos en la parte central, finalmente, en el programa de Gobierno.

Vivienda
Las palabras que aparecen con mayor frecuencia con «vivienda»

Empleo
Términos que aparecen con mayor frecuencia con «empleo»

Corrupción
El término «corrupción» sólo aparece 23 veces entre todos los programas, por lo que no hay demasiadas palabras relevantes en su contexto

Fraude
… al igual que «fraude», con 28 apariciones.

Cataluña
Por último, «Cataluña», «catalán» , agrupadas para mejor visibilidad como «cataluña», son nombradas únicamente en 8 ocasiones entre todos los programas, por lo que las asociaciones no son relevantes desde el punto de vista estadístico, pero sí dan contexto.

Lo que no aparece
El estadístico tf-idf (Term Frequency and Inverse Document Frequency) busca medir la importancia de una palabra para un documento (programa electoral) dentro de una colección de ellos (todos los programas). Es decir, penaliza la aparición en todos los programas analizados y premia la exclusividad respecto al resto.
Lo cierto es que hay palabras que aparecen mucho en los tres programas, como “público”, “social”, «garantizar», etc y que son las que copan el top palabras. Son como árboles que no nos dejan ver el bosque de las palabras propias y diferentes de cada programa, y que en nuestro caso, nos servirá para detectar términos que no se han trasladado de manera tan relevante al programa de Gobierno.
A la vez, en el caso del programa de Gobierno nos mostrará términos que han aparecido con cierta fuerza y que no estaban de manera relevante en los programas originales.
Podemos verlo tanto en palabras concretas…

… como en bigramas. Tengamos en cuenta que normalmente son términos con no muy alta frecuencia, pero sí muy diferenciales con respecto al resto de programas. Podemos concluir que los que aparecen en la columna del PSOE o en la de Unidas Podemos, son términos que no han llegado al programa de Gobierno, o lo han hecho de manera menos relevante que en el programa original.
A la vez, los que aparecen en la columna de Gobierno son los que han ganado fuerza respecto de la que podían tener en sus programas originales.

Créditos
Para un mayor detalle de la metodología y scripts de código R, está disponible el propio análisis de los programas electorales del 10N
Hay abundante y muy buena documentación sobre minería de texto en redes, con diferentes casos de uso. Especialmente didáctico es el trabajo de Julia Silge y David Robinson.
Charles Bordet dispone de un preciso tutorial para la descarga de documentos en formato pdf.
Y existe un buen ejemplo de clasificación de documentos supervisada sobre la biblioteca del Congreso de EE.UU.