Saltar al contenido

Blog Datos · Tutorial Python

Tu primer análisis con Python: salarios en España

Con los datos definitivos del INE para 2024: cargar, validar, comparar y explicar sin confundir media, mediana y brecha. Y con una calculadora para ver dónde quedás vos.

Ariel Castillo Actualizado 6 min de lectura
Portada: histograma de salarios en España con la media marcada y el titular «Salarios en España: la media engaña»

Si en España «se cobra de media» 29.540 euros al año, ¿por qué casi nadie que conocés cobra eso? Porque la media no describe a la persona típica. Con los datos definitivos del INE para 2024, casi dos de cada tres asalariados (62,5 %) cobran menos que la media. Este tutorial te enseña a verlo con Python, y a no caer en la trampa que cae la mayoría de los titulares.1

29.540 €Salario medio bruto anualINE · 2024 · +5,3 % vs 2023
24.497 €Salario mediano: la mitad cobra menosINE · 2024
16.520 €Salario más frecuente (moda)INE · 2024
62,5 %Asalariados que cobran menos que la mediaCálculo propio · INE 2024

La media engaña: mirá la distribución

Una distribución salarial no es simétrica. Hay muchas personas en los tramos bajos y unas pocas con sueldos muy altos que tiran la media hacia arriba. Por eso el INE publica tres medidas, y por eso un análisis serio empieza por el gráfico de la distribución y no por un promedio.

Porcentaje de asalariados por tramo de salario anual Tramos de 1.000 € brutos anuales. El 0,8 % que gana más de 100.000 € queda fuera del gráfico.
Desde (€)% de asalariados
00,00 %
10000,23 %
20000,26 %
30000,74 %
40000,84 %
50000,77 %
60000,75 %
70001,08 %
80001,33 %
90001,33 %
100001,31 %
110001,34 %
120001,63 %
130001,69 %
140002,52 %
150003,53 %
160003,84 %
170003,83 %
180003,82 %
190003,65 %
200003,77 %
210003,57 %
220003,54 %
230003,15 %
240002,99 %
250002,76 %
260002,53 %
270002,34 %
280002,25 %
290002,01 %
300002,28 %
310001,78 %
320001,68 %
330001,58 %
340001,52 %
350001,44 %
360001,36 %
370001,38 %
380001,32 %
390001,27 %
400001,27 %
410001,11 %
420001,09 %
430000,95 %
440000,95 %
450000,88 %
460000,82 %
470000,84 %
480000,72 %
490000,72 %
500000,69 %
510000,60 %
520000,58 %
530000,49 %
540000,49 %
550000,43 %
560000,58 %
570000,38 %
580000,33 %
590000,34 %
600000,33 %
610000,28 %
620000,29 %
630000,28 %
640000,25 %
650000,22 %
660000,25 %
670000,22 %
680000,21 %
690000,19 %
700000,17 %
710000,18 %
720000,19 %
730000,18 %
740000,17 %
750000,16 %
760000,16 %
770000,13 %
780000,12 %
790000,12 %
800000,13 %
810000,10 %
820000,14 %
830000,11 %
840000,11 %
850000,10 %
860000,09 %
870000,09 %
880000,10 %
890000,09 %
900000,09 %
910000,08 %
920000,08 %
930000,08 %
940000,08 %
950000,07 %
960000,06 %
970000,07 %
980000,06 %
990000,08 %

Fuente: INE, Encuesta Anual de Estructura Salarial 2024, datos definitivos (28 de mayo de 2026).

Fijate en tres cosas. El tramo más frecuente es el de 16.000 a 17.000 euros (3,8 % de los asalariados). Entre 17.000 y 23.000 todos los tramos superan el 3,5 %. Y a partir de 30.000 la curva baja despacio: es la «cola larga» que explica por qué la media queda 5.000 euros por encima de la mediana.

● CalculadoraDatos INE 2024

¿En qué parte de la distribución quedás vos?

Escribí tu salario bruto anual. Usa la distribución oficial por tramos de 1.000 €, así que el resultado es una aproximación.

50 %
Ganás más que aproximadamente la mitad de los asalariados.

La brecha salarial: 16,1 % menos de media

En 2024 la ganancia media de las mujeres fue de 26.904,90 euros y la de los hombres de 32.057,55 euros. Dicho de otra manera, el salario promedio femenino fue el 83,9 % del masculino.1 La diferencia existe en todas las comunidades, pero su tamaño cambia mucho: va del 6,3 % de Canarias al 20,6 % de Cantabria.

Salario medio de mujeres y hombres por comunidad autónoma Ordenado de mayor a menor brecha. Pasá el cursor por cada fila para ver los valores.
ComunidadMujeresHombres
Andalucía23.679 €28.296 €
Aragón24.797 €31.123 €
Asturias25.414 €31.852 €
Illes Balears27.886 €30.173 €
Canarias24.299 €25.924 €
Cantabria23.863 €30.053 €
Castilla y León23.647 €28.610 €
Castilla-La Mancha23.767 €28.023 €
Cataluña29.030 €34.438 €
Comunitat Valenciana24.208 €29.357 €
Extremadura23.297 €26.661 €
Galicia24.551 €28.638 €
Madrid31.048 €37.634 €
Murcia23.395 €29.007 €
Navarra28.777 €36.143 €
País Vasco32.300 €37.550 €
La Rioja25.840 €30.028 €

Fuente: INE, EAES 2024. Brecha = (hombres − mujeres) / hombres. Cálculo propio.

Ojo con la conclusión

Es una brecha no ajustada: mezcla diferencias de jornada (más mujeres a tiempo parcial), ocupación, sector y antigüedad. El propio INE pide matizarla con esas variables. Sirve para describir; para hablar de discriminación hace falta comparar puestos equivalentes, y eso requiere microdatos y otro método.

Dónde se cobra más: 10.191 € de diferencia entre comunidades

País Vasco tuvo el salario medio más alto (35.170 €), seguido de Madrid (34.410 €) y Navarra (32.605 €). En el otro extremo, Extremadura (24.979 €), Canarias (25.120 €) y Castilla-La Mancha (26.062 €). Cambiá la serie para ver qué pasa al separar por sexo: el orden se mueve bastante.

Salario medio anual por comunidad autónoma (2024) Línea discontinua: media de España. En terracota, Andalucía.
ComunidadTotalMujeresHombres
Andalucía26.090 €23.679 €28.296 €
Aragón28.062 €24.797 €31.123 €
Asturias28.562 €25.414 €31.852 €
Illes Balears29.075 €27.886 €30.173 €
Canarias25.120 €24.299 €25.924 €
Cantabria27.097 €23.863 €30.053 €
Castilla y León26.177 €23.647 €28.610 €
Castilla-La Mancha26.062 €23.767 €28.023 €
Cataluña31.730 €29.030 €34.438 €
Comunitat Valenciana26.817 €24.208 €29.357 €
Extremadura24.979 €23.297 €26.661 €
Galicia26.547 €24.551 €28.638 €
Madrid34.410 €31.048 €37.634 €
Murcia26.349 €23.395 €29.007 €
Navarra32.605 €28.777 €36.143 €
País Vasco35.170 €32.300 €37.550 €
La Rioja27.855 €25.840 €30.028 €

Fuente: INE, EAES 2024, datos definitivos.

Antes de leer este ranking como «dónde conviene vivir», recordá dos cosas. La primera: refleja sobre todo qué sectores y ocupaciones pesan en cada territorio, no lo que cobra la misma persona en un sitio u otro. La segunda: son salarios brutos, sin ajustar por coste de vida.

Sector y ocupación pesan más que el territorio

La distancia entre comunidades es de 1,4 veces. Entre sectores supera las 3 veces, y entre ocupaciones llega casi a 4: el salario medio de directores y gerentes (63.865 €) fue un 116,2 % superior a la media, y el de los trabajadores no cualificados en servicios (16.063 €) un 45,6 % inferior.1

3,3 ×Energía frente a hostelería57.932 € vs 17.653 €
4 ×Directores frente a no cualificados en servicios63.865 € vs 16.063 €
8,0 %Mayor subida: actividades profesionales, científicas y técnicasINE · 2024 vs 2023
Salario medio anual por sector de actividad (2024) Información y comunicaciones, el sector donde suele trabajar un perfil de datos, en terracota.
SectorTotalMujeresHombres
Industrias extractivas (*)41.952 €51.101 €40.224 €
Industria manufacturera32.882 €29.118 €34.336 €
Energía eléctrica, gas y vapor57.932 €50.357 €61.155 €
Agua, saneamiento y residuos32.363 €30.047 €32.944 €
Construcción26.965 €25.817 €27.132 €
Comercio25.779 €22.674 €28.939 €
Transporte y almacenamiento28.910 €28.972 €28.889 €
Hostelería17.653 €16.222 €19.527 €
Información y comunicaciones42.742 €38.807 €45.054 €
Finanzas y seguros51.863 €46.725 €58.784 €
Inmobiliarias28.854 €26.324 €32.500 €
Profesionales, científicas y técnicas35.165 €31.048 €40.070 €
Administrativas y auxiliares21.097 €17.612 €25.451 €
Administración pública37.518 €35.694 €39.490 €
Educación32.210 €31.351 €33.954 €
Sanidad y servicios sociales32.225 €30.197 €39.246 €
Artísticas y recreativas20.383 €18.551 €21.885 €
Otros servicios20.951 €18.913 €24.904 €

Fuente: INE, EAES 2024. (*) Dato con baja representación muestral.

Cuatro preguntas antes de escribir una línea de código

Un análisis correcto empieza por entender qué mide la fuente. Si no podés responder estas cuatro preguntas, todavía no estás listo para calcular nada:

PreguntaEn este casoPor qué importa
¿Qué fuente?Encuesta Anual de Estructura Salarial (INE)Define qué trabajadores están incluidos y cuáles no.
¿Qué unidad?Ganancia bruta anual por trabajadorNo es neto, ni mensual, ni por hora.
¿Qué periodo?Año 2024, datos definitivosComparar con otro año exige la misma metodología.
¿Qué límite?Datos agregados, no microdatosDescribe diferencias, no explica sus causas.

Tutorial: del CSV a una conclusión defendible

Podés hacerlo en Google Colab sin instalar nada, o en tu ordenador con un entorno virtual. Descargá la tabla del INE y guardala como salarios_ine_2024.csv con las columnas indicador, grupo y euros.

  1. Cargá y mirá antes de calcular

    Dimensiones, tipos, ausentes y duplicados. No calcules un promedio sin saber si la columna son euros anuales, brutos y por trabajador.

  2. Limpiá sin esconder decisiones

    Convertí textos a números y anotá cada filtro. Un ausente no es un cero: significa que el dato no se publicó.

  3. Describí la distribución

    Media, mediana y moda juntas. Si la tabla ya trae agregados, no recalcules como si tuvieras microdatos.

  4. Compará grupos con cuidado

    Diferencias absolutas y relativas, siempre con la misma base. La brecha va con su etiqueta: «no ajustada».

  5. Visualizá para comprobar

    Un histograma muestra la forma; unas barras ordenadas comparan territorios. Unidad, periodo y fuente en cada gráfico.

  6. Redactá con límite

    Qué observaste, en qué población y periodo, por qué importa y qué no se puede inferir.

Python · cargar y validar
import pandas as pd

df = pd.read_csv("salarios_ine_2024.csv")

print(df.shape)              # filas y columnas
print(df.dtypes)             # ¿euros es numérico?
print(df.isna().sum())       # ausentes por columna
print(df.duplicated().sum()) # filas repetidas
Python · media, mediana y moda
resumen = df[df["grupo"] == "Total"].set_index("indicador")["euros"]

for medida in ["Salario medio", "Salario mediano", "Salario modal"]:
    print(f"{medida}: {resumen[medida]:,.2f} €")
Salario medio: 29,540.26 € · Salario mediano: 24,497.17 € · Salario modal: 16,520.18 €
Python · brecha por comunidad
# com: una fila por comunidad con columnas "mujeres" y "hombres"
com["brecha_pct"] = (com["hombres"] - com["mujeres"]) / com["hombres"] * 100

print(com.sort_values("brecha_pct", ascending=False)
         [["comunidad", "brecha_pct"]].round(1).head())
Cantabria 20,6 · Navarra 20,4 · Aragón 20,3 · Asturias 20,2 · Murcia 19,3
Python · percentil aproximado desde tramos
# tramos: columnas "desde" (euros) y "pct" (% de asalariados en [desde, desde+1000))
def porcentaje_por_debajo(salario, tramos, ancho=1000):
    total = 0.0
    for desde, pct in zip(tramos["desde"], tramos["pct"]):
        if salario >= desde + ancho:
            total += pct
        elif salario > desde:
            total += pct * (salario - desde) / ancho
    return total

print(round(porcentaje_por_debajo(29540.26, tramos), 1))  # la media
62.5 ← el 62,5 % gana menos que la media
Python · gráfico de barras ordenado
import matplotlib.pyplot as plt

orden = com.sort_values("total")
ax = orden.plot.barh(x="comunidad", y="total", legend=False, figsize=(8, 6))
ax.axvline(29540.26, linestyle="--", linewidth=1)    # media de España
ax.set_xlabel("Euros brutos anuales")
ax.set_title("Salario medio por comunidad · INE 2024")
plt.tight_layout()
plt.savefig("salidas/salario_comunidades.png", dpi=200)

Colab o tu ordenador: qué conviene

Google ColabEntorno local
InstalaciónNingunaPython + entorno virtual
ArchivosTemporales: se borran al cerrar la sesiónQuedan en tu disco
ReproducibleSi guardás el notebook y los datos aparteCon requirements.txt
Ideal paraTu primer análisisProyectos que vas a mantener
Terminal · entorno local
python -m venv .venv
.venv\Scripts\activate          # en macOS o Linux: source .venv/bin/activate
python -m pip install pandas openpyxl matplotlib
python -m pip freeze > requirements.txt

Qué podés afirmar y qué todavía no

Podés afirmarNecesitás más análisis para afirmar
La media (29.540 €) supera a la mediana (24.497 €).Cuánto cobra un perfil concreto, como Data Analyst.
El 62,5 % cobra menos que la media.Por qué existe la diferencia entre mujeres y hombres.
País Vasco tuvo la media más alta y Extremadura la más baja.Dónde «conviene» trabajar, sin ajustar por coste de vida.
La media de las mujeres fue el 83,9 % de la de los hombres.Qué parte se explica por jornada, ocupación o sector.

El código calcula. Decidir qué cálculo responde la pregunta es tu trabajo.

Errores normales del primer notebook

¿Por qué aparece FileNotFoundError?

Python no encuentra el archivo. Comprobá la carpeta de trabajo (import os; os.getcwd()), el nombre y la extensión real del archivo. En Colab, subilo primero al panel de archivos.

¿Y si los números aparecen como texto?

Las tablas del INE usan punto para miles y coma para decimales. Leé con pd.read_csv(ruta, thousands=".", decimal=",") o convertí con pd.to_numeric y revisá qué valores quedaron como ausentes.

¿La brecha del INE demuestra discriminación salarial?

No por sí sola. Es una diferencia agregada y no ajustada: mezcla jornada, ocupación, sector y antigüedad. Para analizar discriminación hay que comparar puestos equivalentes con microdatos y un método específico.

¿Por qué uso la mediana y no la media?

Porque la distribución salarial es asimétrica: unos pocos sueldos muy altos suben la media. La mediana dice cuánto cobra la persona del medio, y por eso describe mejor lo «típico». Lo correcto es mostrar las dos.

Para seguir practicando

  • Repetí el análisis por ocupación y compará la distancia con la que viste por comunidad.
  • Calculá diferencias absolutas y relativas, y escribí una conclusión de cien palabras con su límite.
  • Hacé el gráfico de la distribución desde cero y marcá media, mediana y moda.
  • Pedile a otra persona que ejecute tu notebook sin tu ayuda: si no puede, todavía no es reproducible.

Si querés seguir con un caso más cercano al trabajo, mirá cómo está el mercado de Data Analyst en España o los fundamentos del análisis de datos.

Fuentes

  1. INE. Encuesta Anual de Estructura Salarial. Año 2024. Datos definitivos. Nota de prensa, 28 de mayo de 2026.
  2. INE. INEbase: Encuesta Anual de Estructura Salarial, tablas de resultados.
  3. pandas. Documentación: primeros pasos.
  4. Matplotlib. Getting started.
  5. Google. Google Colab.