Repositorio que recoge diferentes elementos de sistemas electorales para su comparación, dentro de los marcos de la constitución española de 1978.
Project description
Electoral Systems Analysis
Conjunto de funciones asociadas al reparto de representantes de un sistema electoral, dentro del marco implementado por la constitución española de 1978.
Cómo comenzar
Las funciones que contiene este paquete están desarroladas utilizando Python 3.8
.
Requirements
Los paquetes que utiliza estas funciones son:
Instalación
pip install electoral-system-analysis
Contenido
Las funciones dentro del paquete electoral-systems-analysis
se dividen en tres grupos.
Limpia de datos
Dentro de clean_electoral_data.py
se pueden encontrar las diferentes funciones usadas para limpiar los datos de las elecciones generales sacados del ministerio de interior.
Cada proceso electoral tiene su función propia debido a que cada proceso tiene una estructura de datos distinta. Además en muchos casos se ha tenido que hacer un preprocesamiento manual posterior a los resultados de la limpia.
- 2023 Julio: https://docs.google.com/spreadsheets/d/1caYOQNjlfU5ygxCR9EK3ZSCCrGlS7mJxNXMVLWhybzg/edit#gid=1260496320
- 2019 Noviembre: https://docs.google.com/spreadsheets/d/16hnM4m8h453KBpRzQB0FYljixHatGQsvJxLzrKHt16c/edit#gid=838017858
Distribución de escaños por region
En distribution_regions.py
encontramos diferentes maneras de repartir los escaños entre las regiones. Por defecto el sistema utiliza la metodología de LOREG.
Distribución de escaños por partído
En distribution_formulas
podemos encontrar diferentes fórmulas de reparto de escaños entre partidos como:
- Ley de D'Hondt
dhondt
: https://es.wikipedia.org/wiki/Sistema_D%27Hondt - Sainte-Laguë
sainte_lague
ysainte_lague_modificado
: https://es.wikipedia.org/wiki/M%C3%A9todo_Sainte-Lagu%C3%AB - Cociente de Hare
hare
: https://es.wikipedia.org/wiki/Cociente_Hare - Cociente de Droop
droop
: https://es.wikipedia.org/wiki/Cociente_Droop - Cociente de Imperiali
imperiali
: https://es.wikipedia.org/wiki/Cuota_Imperiali - Cociente de Hagenbach-Bischoff
hagenbach
: https://es.wikipedia.org/wiki/Cuota_Hagenbach-Bischoff
Podemos acceder a los diferentes métodos a traves de la función get_distribution_formula
mediante las keys que aparecen arriba.
Score de Proporcionalidad
Para medir la proporcionalidad del sistema se ha creado una función que suma el valor absoluto de la diferencia del porcentaje de votos de cada partido y su porcentaje de representantes. Esta suma se la resta a 1, de tal manera que un sistema en el que coincida el porcentaje de votos y de escaños obtendrá una porporcionalidad del 100%.
score_proportionality = 1 - SUM(ABS(votes_percent - representatives_percents))
Este score sirve para poder comparar y detectar aquellos sistemas electorales en donde haya menos relación entre el porcentaje de representantes con los de votos.
Autor
- Santiago Arran Sanz (santhiperbolico)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file electoral_system_analysis-1.0.2.tar.gz
.
File metadata
- Download URL: electoral_system_analysis-1.0.2.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c00dd24be2072740228049128ff81870bdc19e447b1874ee9bcca2da104137c8 |
|
MD5 | 02c2a6c74cefcffc0230af18cd6dcffe |
|
BLAKE2b-256 | 4abd5c7065c64e225b5010aead5a6e20f6603e3adf72675b504f1aeea8391071 |
File details
Details for the file electoral_system_analysis-1.0.2-py3-none-any.whl
.
File metadata
- Download URL: electoral_system_analysis-1.0.2-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49cd3be94a555dbc1f14eb6d8cb7eb495e28de5b2669258da4b946ea253c1a6b |
|
MD5 | 2dae3a497b0d4fb94b86a0a8de60be6c |
|
BLAKE2b-256 | 4f06890574496ad3df432d03bb7378bf237963ef9440aa54878bf0a2989cf9ca |