Skip to content

LCaravaggio/politext

Folders and files

NameName
Last commit message
Last commit date

Latest commit

cb3336f · Aug 24, 2023
Aug 19, 2022
Jun 12, 2023
Aug 24, 2023
Aug 18, 2023
Aug 11, 2022
Aug 18, 2023
Apr 14, 2023
Feb 24, 2023
Apr 18, 2023
Apr 24, 2023
Jun 7, 2023
Aug 18, 2023
Jun 12, 2023
Aug 24, 2023
Aug 11, 2022
Jan 24, 2023
Aug 14, 2023
Aug 8, 2023
Aug 24, 2023
Aug 8, 2023

Repository files navigation

politext

Diputados

  • El primer paso consiste en la limpieza de la Base (se normalizan los partidos y se eliminan todos los discursos que no se consideran PSOE-PP; Se eliminan las intervenciones del presidente; Se elimina puntuación; Se eliminan stowords; Se hace stemimng; Finalmente se tokenizan las intervenciones): link

  • Luego se genera un vocabulario de acuerdo al criterio de Gentzkow, Shapiro y Taddy (2019): link

  • Con ese vocabulario se realiza un ejercicio de Topic Modeling: link
    Se obtienen así los 20 principales bigramas para 30 topics por weights y por frex
    Los 20 principales bigramas para 10 topics por weights y por frex
    Y también los topics por año por frex, por año por weights, por legislatura por frex y por legislatura por weights
    En estos casos se presenta el valor relativo respecto de la unidad temporal.

  • Este mismo ejercicio de Topic Modelling se replica para la base entera (es decir, sin eliminar a los partidos no PSOE-PP): link. Las salidas de ese ejercicio se encuentran en la siguiente carpeta. También se generaron dos bases con los weight y frex de ese ejercicio.

  • Luego, utilizando ese mismo vocabulario, pero sobre las órdenes del día (base solo PSOE-PP) se generan 15 topics por LDA y 10 por una metodología de diccionario: link
    Por frex sobre órdenes del día por año y sobre órdenes del día por legislatura
    Por weights sobre órdenes del día por año y sobre órdenes del día por legislatura
    Luego también por diccionario por año y por diccionario por legislatura

  • También, utilizando el mismo vocabulario, se realizó un ejercicio de clasificación de partidos con LASSO (base solo PSOE-PP). Esto permite observar los bigramas que con mayor probabilidad identifican uno u otro partido (PSOE-PP): link
    Se pueden observar así los 20 bigramas para toda la base por semana, por mes, por año y por legislatura. También se obtuvieron gráficos con el macro f1-score de cada LASSO por semana, mes, año y legislatura. Esto permite identificar los períodos de tiempo en los que los discursos son más fácilmente separables entre partidos, indicando que los partidos "se distancian", o "hablan idiomas diferentes". Esta noción se conoce en la literatura como "partisanship".

  • Luego se realizó una asignación de Topic (usando el LDA de 30 topics) a cada semana, utilizando la moda de la asignación por discurso de entre todos los discursos pertenecientes a esa semana: link
    Esto se puede observar en la tabla y gráficamente. En el código está también la identificación de las semanas que muestran f1-score igual a 1, 0 o mayor a 0.8 (como indicadores de problemas o de máxima identificación de partido) y de las semanas en las que el topic es distinto al mayoritario: el Topic 1. También se generaron dos bases con el valor de weights y frex de cada discurso.

Senadores

  • En un primer momento fue necesario construir la base. Se scrapearon los PDF y luego se separó el discurso de cada senador (este proceso es, por supuesto, perfectible). Finalmente se agregó el partido a cada senador (de acuerdo a este listado), se elimináron stopwords y puntuación, y se hizo la tokenización con posterior stemming a la Porter: link.

  • A partir de este paso, se podría utilizar el vocabulario generado para los discursos de la cámara de diputados, o bien generar un vocabulario nuevo específico de la cámara de senadores. Esto segundo se hace en el siguiente link.

  • Con el vocabulario del SENADO se realiza un ejercicio de Topic Modeling: link
    Se obtienen así los 20 principales bigramas para 30 topics por weights y por frex
    Los 20 principales bigramas para 10 topics por weights y por frex
    Y también los topics por año por frex, por año por weights, por legislatura por frex y por legislatura por weights
    En estos casos se presenta el valor relativo respecto de la unidad temporal.

  • También, utilizando el mismo vocabulario, se realizó un ejercicio de clasificación de partidos con LASSO (base solo GPP-GPS). Esto permite observar los bigramas que con mayor probabilidad identifican uno u otro grupo parlamentario (GPP-GPS): link
    Se pueden observar así los 20 bigramas para toda la base por semana, por mes, por año y por legislatura. También se obtuvieron gráficos con el macro f1-score de cada LASSO por semana, mes, año y legislatura. Esto permite identificar los períodos de tiempo en los que los discursos son más fácilmente separables entre partidos, indicando que los partidos "se distancian", o "hablan idiomas diferentes". Esta noción se conoce en la literatura como "partisanship". En el código está también la identificación de las semanas que muestran f1-score igual a 1, 0 o mayor a 0.8 (como indicadores de problemas o de máxima identificación de partido) y de las semanas en las que el topic es distinto al Topic 1 (que en este caso no es necesariamente el mayoritario). También se generaron dos bases con el valor de weights y frex de cada discurso.

About

Ejercicio de replicar Gentzkow (2019) con datos del parlamento español. https://onlinelibrary.wiley.com/doi/abs/10.3982/ECTA16566

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published