Cobertura electoral

Actualmente la base incluye:

  • Elecciones al Congreso: todas las convocatorias.
  • Elecciones municipales: todas las convocatorias.
  • Elecciones europeas: todas las convocatorias desde 1987.
  • Elecciones autonómicas: las 17 comunidades autónomas.

Datos provisionales: Para las convocatorias más recientes en las que todavía no se han publicado datos oficiales definitivos (Extremadura 2025, Aragón 2026, Castilla y León 2026), la base incluye datos del escrutinio provisional de la noche electoral facilitados por Minsait. Estos datos pueden diferir de los resultados definitivos. Véase la sección Minsait (escrutinio provisional).

Cobertura y granularidad

La granularidad varía según elección y fuente original; en todos los casos se publican agregados territoriales consistentes (CCAA, provincia, circunscripción, municipio y sección censal cuando está disponible).

ÁmbitoAños cubiertosGranularidad máximaNotas
CongresoTodas las convocatorias desde 1977Sección censalDatos vía paquete infoelectoral
MunicipalesTodas las convocatoriasSección censal (cuando hay mesa/sección disponible) / Municipal (histórico sin mesa)Datos vía paquete infoelectoral
EuropeasTodas las convocatorias desde 1987Sección censal (cuando hay mesa/sección disponible) / Municipal (histórico sin mesa)Datos vía paquete infoelectoral
AndalucíaTodas las convocatoriasSección censalAPI del Sistema de Información Electoral de Andalucía
Aragón2011–2026 (2026: provisional)Sección censal (recientes) / Municipal (histórico)Datos abiertos Gobierno de Aragón (2011–2023); escrutinio provisional Minsait (2026)
AsturiasTodas las convocatoriasMesa (2015+) / Municipal (pre-2015)SADEI (histórico) + GIPEYOP (reciente)
Baleares1983–2023Sección censalIBESTAT + GIPEYOP
Canarias1983–2023Municipal (PARCAN) / Sección (GIPEYOP)Múltiples fuentes
Cantabria1983–2023MesaGIPEYOP
Castilla-La Mancha1983–2023Mesa (2019+) / Municipal (histórico)Junta de Castilla-La Mancha (datos abiertos)
Castilla y León1983–2026 (2026: provisional)MesaDatos abiertos Junta de CyL (1983–2022); escrutinio provisional Minsait (2026)
Cataluña1980–2023MesaDatos abiertos Generalitat
C. Valenciana1983–2023Sección censalDatos abiertos GVA (1987-2023); GIPEYOP (1983)
Extremadura1983–2025 (2025: provisional)Mesa (2015+) / Municipal (histórico)Junta de Extremadura (datos abiertos)
Galicia1981–2024Mesa (reciente) / Municipal-provincial (histórico)Xunta de Galicia
C. de Madrid1983–2023MesaDatos abiertos Comunidad de Madrid
Murcia1983–2023MesaRegión de Murcia (datos abiertos)
Navarra1979–2023MesaGobierno de Navarra
País Vasco1980–2024MesaGobierno Vasco
La Rioja1983–2023MesaGobierno de La Rioja

Resumen de fuentes

ElecciónFuente principalFormatoDescargaCobertura
CongresoMinisterio del InteriorTexto sin delimitarinfoelectoral (R package)Todas las convocatorias
MunicipalesMinisterio del InteriorTexto sin delimitarinfoelectoral (R package)Todas las convocatorias
EuropeasMinisterio del InteriorTexto sin delimitarinfoelectoral (R package)1987–2024
AndalucíaJunta de Andalucía (SIEL)JSONAPITodas las convocatorias
AragónGobierno de Aragón (datos abiertos) + Minsait (provisional)CSV/XLSXManual2011–2026
AsturiasSADEI + GIPEYOP.px + XLSXScraping + manualTodas las convocatorias
BalearesIBESTAT + GIPEYOP.px + XLSXManual1983–2023
CanariasPARCAN + ISTAC + GIPEYOPCSV + XLSXAPI + manual1983–2023
CantabriaGIPEYOPXLSXManual1983–2023
Castilla-La ManchaJunta de Castilla-La Mancha (datos abiertos)CSV/XLSXDescarga1983–2023
Castilla y LeónJunta de Castilla y León + Minsait (provisional)CSV (;, Latin-1)Manual1983–2026
CataluñaGeneralitat de CatalunyaCSVManual1980–2023
C. ValencianaGeneralitat Valenciana + GIPEYOPCSV + XLSXManual1983–2023
ExtremaduraJunta de ExtremaduraXLSXManual1983–2023
GaliciaXunta de GaliciaXLS/XLSXManual1981–2024
C. de MadridComunidad de MadridXLS/XLSXManual1983–2023
MurciaRegión de MurciaXLSManual1983–2023
NavarraGobierno de NavarraCSV + XLSManual1979–2023
País VascoGobierno VascoXLS/XLSXManual1980–2024
La RiojaGobierno de La RiojaXLSManual1983–2023

Detalle por elección / comunidad

Congreso (00-congreso)

  • Fuente: Paquete R infoelectoral (datos del Ministerio del Interior).
  • Método: Funciones provincias(), municipios(), mesas() del paquete.
  • Granularidad: Provincia, municipio y sección censal.
  • Ficheros brutos: No hay CSV en data-raw/; el paquete descarga directamente desde la fuente oficial.
  • Scripts: sauron_formats.R (orquestador) → format_provincias.R, format_municipios.R, format_secciones.R.
  • Notas: Separa CER (residentes) de CERA (residentes ausentes).

Municipales (00b-municipales)

  • Fuente: Paquete R infoelectoral (datos del Ministerio del Interior).
  • Método: Funciones provincias(), municipios() y mesas(); para algunas convocatorias históricas se integra solo a nivel municipal.
  • Granularidad: Sección censal (cuando hay mesa/sección disponible) y municipal en los años históricos sin mesa.
  • Ficheros brutos: No hay CSV en data-raw/; el paquete descarga directamente desde la fuente oficial.
  • Scripts: format.R.
  • Notas: Separa CER/CERA y homogeneiza estructura territorial para todas las convocatorias.

Europeas (00c-europeas)

  • Fuente: Paquete R infoelectoral (datos del Ministerio del Interior).
  • Método: Funciones provincias(), municipios() y mesas(); para convocatorias históricas sin datos de mesa/sección se integra el fallback municipal.
  • Granularidad: Sección censal cuando está disponible y municipal en los años históricos sin mesa.
  • Ficheros brutos: data-raw/hechos/00c-europeas/{mesas,municipios,provincias,codigos_ccaa}.rds, generados con fetch-data.R.
  • Scripts: fetch-data.R (descarga/preparación de RDS) y format.R.
  • Notas: Separa CER/CERA, remapea códigos de CCAA de infoelectoral a INE y agrega resultados a CCAA, provincia, municipio y sección.

Andalucía (01-andalucia)

  • Fuente: API del Sistema de Información Electoral de Andalucía de la Junta de Andalucía.
  • URL base: https://ws040.juntadeandalucia.es/siel-api/v1
  • Método: REST API (httr::GET) con endpoints: /opciones/fconvocatoria, /opciones/provincia, /opciones/municipio, /opciones/distrito, /opciones/seccion.
  • Granularidad: Provincia, municipio y sección censal.
  • Ficheros brutos: resumen_{provincias,municipios,secciones}.csv, escrutinio_{provincias,municipios,secciones}.csv, nomenclators/*.rds.
  • Scripts: 00_fetch-nomenclators.R01-06_fetch-info/votos-*.R (descarga paralela con future_pmap_dfr) → 07-format-data.R.
  • Notas: Descarga paralela con rate limiting (5 reintentos, 2s de pausa base). CERA en municipio=901. Agrega a nivel CCAA.

Aragón (02-aragon)

  • Fuente: Portal de datos abiertos del Gobierno de Aragón.
  • Método: Ficheros CSV/XLSX descargados manualmente.
  • Granularidad: Municipal y provincial (histórico); sección en elecciones recientes.
  • Ficheros brutos: Resultados electorales agrupados a escala municipal (histórico).csv, Resultados electorales agrupados a escala provincial (histórico).xlsx, carpetas por año (2011/, 2015/, 2019/, 2023/).
  • Scripts: 01_format-info.R (resumen/participación), 02_format-votos.R (votos por partido).
  • Notas: CERA identificado como municipio=‘000’. Formatos de tabla variables por año. Cobertura: 2011–2023. Los datos de la convocatoria de 2026 proceden del escrutinio provisional Minsait; véase la sección correspondiente.

Asturias (03-asturias)

  • Fuente: Doble fuente — SADEI (pre-2015) + GIPEYOP (2015+).
  • Método: SADEI: scraping web + lectura de ficheros .px (paquete pxR). GIPEYOP: lectura directa de xlsx.
  • Granularidad: Mesa (2015+), municipal (pre-2015).
  • Ficheros brutos: SADEI/*.px, gipeyop/Asturias{2015,2019,2023}_mesas.xlsx, censo_ine/, correspondencia_municipio-circunscripcion.xlsx.
  • Scripts: 00_get-nomenclator-sadei.R, 01_format-data.R.
  • Notas: Asturias tiene circunscripciones sub-provinciales (Occidente/Centro/Oriente, códigos 331/332/333). Transformaciones pivot complejas para el formato .px.

Baleares (04-baleares)

  • Fuente: IBESTAT (Institut d’Estadística de les Illes Balears) + GIPEYOP.
  • Método: Lectura de ficheros .px (formato PX-WEB estadístico) con pxR::read.px().
  • Granularidad: Sección.
  • Ficheros brutos: Carpetas por año (1983/2023/) con ficheros .px, 22codislas.xlsx (mapeo islas), cera/, gipeyop/.
  • Scripts: format.R.
  • Notas: Circunscripciones insulares (Mallorca, Menorca, Ibiza, Formentera). Códigos de 12 caracteres (pre-1995) vs 10 caracteres (1995+). Cobertura: 1983–2023.

Canarias (05-canarias)

  • Fuente: PARCAN (1999+) + ISTAC + GIPEYOP (1983–2015).
  • Método: PARCAN: descarga CSV por municipio. ISTAC: lectura de xlsx. GIPEYOP: lectura de xlsx.
  • Granularidad: Municipal (PARCAN), provincial/sección (GIPEYOP/ISTAC).
  • Ficheros brutos: parcan/ (CSV por municipio), istac/ (datasets ISTAC xlsx), gipeyop/Canarias{1983,1987}_provincias.xlsx, Canarias{1991-2015}_secciones.xlsx.
  • Scripts: 00_download-data-parcan.R, format.R.
  • Notas: 7 circunscripciones insulares (Fuerteventura, Gran Canaria, La Gomera, El Hierro, La Palma, Tenerife, Lanzarote) + circunscripción autonómica. Cobertura: 1983–2023.

Cantabria (06-cantabria)

  • Fuente: GIPEYOP (Spanish Electoral Archive).
  • Método: Lectura de ficheros XLSX descargados manualmente.
  • Granularidad: Mesa.
  • Ficheros brutos: Serie histórica de ficheros Cantabria{YYYY}_mesas.xlsx (1983–2023).
  • Scripts: format.R.
  • Notas: Parsing dinámico de columnas de partido según convocatoria.

Castilla y León (07-cyl)

  • Fuente: Portal de datos abiertos de la Junta de Castilla y León.
  • Método: Ficheros CSV descargados manualmente.
  • Granularidad: Sección.
  • Ficheros brutos: Un CSV por año (1983.csv2022.csv), delimitados por ;, codificación Latin-1.
  • Scripts: format.R.
  • Notas: Parsea la estructura del código de mesa para extraer provincia/municipio/distrito/sección. Agrega por niveles. Cobertura: 1983–2022. Los datos de la convocatoria de 2026 proceden del escrutinio provisional Minsait; véase la sección correspondiente.

Castilla-La Mancha (08-clm)

  • Fuente: Junta de Castilla-La Mancha (datos abiertos).
  • Método: Integración mixta de CSV y XLSX, con lectura específica por periodo.
  • Granularidad: Mesa (2019–2023) y municipal (histórico, 1983–2015).
  • Ficheros brutos: CSV históricos por año y libros Excel recientes (resultados2019.xlsx, resultados2023.xlsx).
  • Scripts: format.R.
  • Notas: En parte del histórico faltan algunos campos de participación (blancos/nulos) y se conservan como NA cuando la fuente no los publica.

Cataluña (09-catalunya)

  • Fuente: Generalitat de Catalunya.
  • Método: Ficheros CSV descargados (datos abiertos electorales).
  • Granularidad: Sección.
  • Ficheros brutos: Patrón de nombre A{YYYY}{N}-{TIPO}-ME.csv (ej: A20231-Columnes-ME.csv).
  • Scripts: 01_format-data.R.
  • Notas: Nombres de columna en catalán. Locale con coma decimal y punto de agrupación. CERA en municipio=‘998’. Cobertura: 1980–2023.

Comunidad Valenciana (10-comunidad-valenciana)

  • Fuente: Portal de Datos Abiertos de la Generalitat Valenciana, y GIPEYOP (1983).
  • Método: Ficheros CSV y xlsx descargados manualmente.
  • Granularidad: Sección.
  • Ficheros brutos: CSV por año (1987.csv2023.csv) + Comunitat Valenciana1983_municipios.xlsx (1983 en formato especial).
  • Scripts: format.R.
  • Notas: Naming de columnas variable entre años. Codificación variable. 1983 es xlsx con resultados municipales precalculados. Cobertura: 1983–2023.

Extremadura (11-extremadura)

  • Fuente: Junta de Extremadura (datos abiertos).
  • Método: Lectura de XLSX con dos formatos (municipal histórico y mesa en convocatorias recientes).
  • Granularidad: Mesa (2015+), municipal (histórico).
  • Ficheros brutos: Serie de Extremadura_{YYYY}_municipios.xlsx y Extremadura_{YYYY}_mesas.xlsx.
  • Scripts: format.R.
  • Notas: Cobertura 1983–2023. Los datos de la convocatoria de 2025 proceden del escrutinio provisional Minsait; véase la sección correspondiente.

Galicia (12-galicia)

  • Fuente: Xunta de Galicia (datos abiertos) + histórico provincial.
  • Método: Lectura de XLS/XLSX con funciones auxiliares para homogeneizar nombres de columnas por convocatoria.
  • Granularidad: Mesa (convocatorias recientes) y provincial/municipal en parte del histórico.
  • Ficheros brutos: Carpetas por año (2001/, 2005/, 2009/, 2012/, 2016/, 2020/, 2024/) y ficheros históricos (1981–1997).
  • Scripts: 00_functions.R, format.R.
  • Notas: Cambios de estructura entre años y codificaciones heterogéneas.

Comunidad de Madrid (13-comunidad-madrid)

  • Fuente: Portal de Datos Abiertos de la Comunidad de Madrid.
  • Método: Ficheros Excel (.xls/.xlsx) descargados manualmente.
  • Granularidad: Sección.
  • Ficheros brutos: {año}_Mesas.xls (1995–2021), datos_electorales_elecciones_autonomicas_comunidad_de_madrid_2023.xlsx (2023, formato diferente), Madrid{1983,1987,1991}_circunscripcion.xlsx (histórico).
  • Scripts: format.R.
  • Notas: 2003 tiene dos elecciones (mayo y octubre). Multi-header parsing en Excel. Circunscripción única (provincial). Cobertura: 1983–2023.

Murcia (14-murcia)

  • Fuente: Región de Murcia (datos abiertos).
  • Método: Lectura de XLS/XLSX con parseo de cabeceras específicas según periodo.
  • Granularidad: Mesa.
  • Ficheros brutos: Ficheros históricos por municipio (pre-2003), Murcia2003_mesas.xlsx y serie posterior por mesa.
  • Scripts: format.R.
  • Notas: Se aplican transformaciones distintas para formatos pre y post 2003.

  • Fuente: Gobierno de Navarra (datos abiertos).
  • Método: Integración mixta CSV (1999+) y XLS histórico (1979–1995).
  • Granularidad: Mesa.
  • Ficheros brutos: navarra_mesas_{YYYY}.csv y soc_elec_parla_nav_{YYYY}.xls.
  • Scripts: format.R.
  • Notas: Homogeneización de múltiples variantes de nombres de columna entre periodos.

País Vasco (16-pais-vasco)

  • Fuente: Gobierno Vasco (datos abiertos).
  • Método: Lectura de XLS/XLSX con normalización de formatos históricos.
  • Granularidad: Mesa.
  • Ficheros brutos: Serie MesP{YY}_c.xls(x) (1980–2024).
  • Scripts: format.R.
  • Notas: Estructura de ficheros consistente por convocatoria con ajustes menores de columnas.

La Rioja (17-la-rioja)

  • Fuente: Gobierno de La Rioja (datos abiertos).
  • Método: Integración de tres ficheros XLS complementarios por convocatoria (resumen, detalle de votos y avances).
  • Granularidad: Mesa.
  • Ficheros brutos: resumen_mesa.xls, detalle_votos_mesa.xls, avances_mesa.xls.
  • Scripts: format.R.
  • Notas: Cobertura 1983–2023.

Minsait — escrutinio provisional

⚠ Datos provisionales. Esta fuente contiene los resultados del escrutinio provisional de la noche electoral. Estos datos pueden diferir de los resultados definitivos publicados por las administraciones autonómicas una vez concluido el escrutinio oficial completo. En cuanto estén disponibles los datos definitivos, esta fuente será sustituida.

  • Fuente: Minsait — empresa que gestiona el escrutinio provisional para varias comunidades autónomas.
  • Método: Ficheros CSV del escrutinio provisional facilitados directamente. Cada fila corresponde a una mesa electoral y un partido.
  • Granularidad: Mesa (fuente), publicado a nivel de sección, municipio, provincia y CCAA.
  • Ficheros brutos: data-raw/hechos/minsait/ — un CSV por CCAA (02-aragon.csv, 07-cyl.csv, 11-extremadura.csv).
  • Scripts: R/01-generate-data/hechos/minsait/format.R (script unificado para todas las CCAA de esta fuente).
  • Elecciones cubiertas:
    • Aragón — Elecciones Autonómicas 2026 (8 de febrero de 2026)
    • Castilla y León — Elecciones Autonómicas 2026 (15 de marzo de 2026)
    • Extremadura — Elecciones Autonómicas 2025 (21 de diciembre de 2025)
  • Estructura del CSV: n_envio, timestamp, codigo_ccaa*, codigo_provincia, codigo_municipio, codigo_distrito, codigo_seccion, codigo_mesa, censo, total_votantes, abstencion, votos_blanco, votos_nulos, partido, votos, recode.

Fuentes transversales

Fechas de elecciones

  • Fichero: data-raw/fechas_elecciones.csv — contiene tipo_eleccion, fecha (en texto español, ej: “9 de junio de 2024”), ccaa.
  • Fuente alternativa: Scraping de la Junta Electoral Central (fechas-elecciones-scrap.R).

Códigos territoriales

FicheroDescripción
codigos_secciones.rdsCódigos de secciones censales canónicos
codigos_secciones_infoelectoral.rdsCodificación alternativa Infoelectoral
codigos_secciones_{01,03,07}.rdsSecciones específicas por CCAA (Andalucía, Asturias, CyL)
circunscripciones.csvCircunscripciones sub-provinciales (Asturias, Canarias, Baleares)
correspondencia_municipio_circunscripcion.csvMapeo municipio → circunscripción
nombres_municipios.csvNomenclátor de municipios (INE)

Representantes y escaños

FicheroDescripción
nrepresentantes_prov.xlsxEscaños asignados por provincia/circunscripción y elección
nrepresentantes_muni.xlsxEscaños asignados por municipio (locales)
representantes_prov.xlsxRepresentantes electos por provincia
representantes_muni.xlsxRepresentantes electos por municipio

Agradecimientos

Cuando no se ha encontrado una fuente oficial directa se han empleado los datos históricos del Spanish Electoral Archive (SEA), elaborado por el GIPEYOP (Grupo de Investigación en Procesos Electorales y Opinión Pública) de la Universitat de València. Agradecemos enormemente su labor de recopilación y puesta a disposición de estos datos electorales.