Las posiciones de los partidos importan: una comparación entre España y Alemania

Manuel Romero
7 min readNov 19, 2021

--

Hace casi dos meses fueron las elecciones alemanas y varios investigadores han realizado análisis y gráficos interesantes sobre la nueva configuración política del país. Uno de ellos, publicado por Dominik Haitz, se hizo viral, quizás por la gran información que nos da sobre las diferencias entre los partidos. Lo hemos reproducido en Python utilizando la ola 9 de la ESS (European Social Survey), donde se pueden observar las características de los individuos que suelen votar a cada partido, según si son más urbanos o rurales (según la población) y si son (o, mejor dicho, si se perciben) más ricos o más pobres.

Para realizar esto, en primer lugar, hemos filtrado la base de datos de la encuesta y hemos sustituido las variables por su mediana o su moda, utilizandas pandas y numpy:

# seleccionamos el país
df_1 = df.loc[df["cntry"] == "DE"]

# seleccionamos las filas
df_1 = df_1[["prtvede1", "domicil", "cntry", "hinctnta", "imwbcnt", "gincdif"]]

# Sustituimos NA
df_1["prtvede1"] = df_1["prtvede1"].fillna("No procede")

# en este tenemos que calcular la moda
df_1["domicil"] = df_1["domicil"].fillna(mode(df_1["domicil"]))

# Aquí sencillamente ponemos la mediana utilizando numpy
df_1["hinctnta"] = df_1["hinctnta"].fillna(np.nanmedian(df_1["hinctnta"]))

df_1["imwbcnt"] = df_1["imwbcnt"].fillna(np.nanmedian(df_1["imwbcnt"]))

df_1["gincdif"] = df_1["gincdif"].fillna(np.nanmedian(df_1["gincdif"]))

Ahora debemos recodificar la variable de ciudad y la de los partidos utilizando diccionarios, basándonos en las recomendaciones de la encuesta.

# Diccionario para la variable de lugar. Basados en la WVS, aproximación
townmap = {
1.0:750000,
2.0: 250000,
3.0:60000,
4.0:12500,
5.0:2500,
}
df_1["urbanismo"] = df_1["domicil"].apply(lambda x: townmap[x])

# Diccionario para la variable de partidos
partymap = {
1.0:"CDU",
2.0: "SPD",
3.0:"Die Linke",
4.0:"Grünen",
5.0:"FDP",
6.0:"AfD",
7.0:"No procede",
8.0:"No procede",
9.0:"No procede",
"No procede":"No procede"
}
df_1["party"] = df_1["prtvede1"].apply(lambda x: partymap[x])

# cambio de indicador de positivo a negativo
df_1["gincdif"] = (df_1["gincdif"]-6)*-1

Ahora, agrupamos los datos según las medias de los partidos y realizamos el gráfico con matplotlib:

# tamaño
plt.figure(figsize=(10, 10))

# líneas medias (utilizando el dataset inicial, no el agrupado)
plt.axhline(y=df_1["hinctnta"].mean(), color = "black")
plt.axvline(x=df_1["urbanismo"].mean(), color = "black")

# etiquetas de los ejes
plt.xlabel("Población", fontsize=15)
plt.ylabel("Ingresos [Escala 1-10]", fontsize=15)

# gráfico, tamaño y colores
sns.scatterplot(data=means, x="urbanismo", y="hinctnta", hue="party", s=700,
palette=["dodgerblue", "black", "purple", "yellow", "green", "red"])

Como vemos, los partidos se posicionan de maneras muy distintas. En primer lugar, los socialdemócratas (SPD) parecen estar más cerca del electorado medio en estos ámbitos. Por otra parte, tanto los conservadores (CDU/CSU) como extrema derecha (AfD) representan a los territorios más rurales, la primera donde viven los ricos y la segunda donde viven los más pobres. No obstante, los liberales (FDP) no parecen ser ni muy urbanos ni muy rurales, aunque sí representan más a los individuos más ricos, como la CDU. En la izquierda se presenta una división parecida a la de la derecha: los socialdemócratas (SPD) predominarían los territorios rurales y Die Linke y los verdes (Grünen) en los urbanos, los más ricos votan a estos últimos y los más pobres al partido más izquierdista, aunque el SPD parece ser un partido “de clase media”. En este sentido, las dos opciones más ideológicamente radicales (AfD y Die Linke) representan a un electorado económicamente similar, pero distanciado geográficamente.

Otros investigadores, como Matthias Diermeter, se han centrado en cómo son las posiciones de cada partido según las políticas que aplican y las preferencias de sus votantes. Para ello toma dos ejes: uno horizontal, que mide si la posición del partido es más proteccionista (más a la izquierda), apoyando políticas sociales y la regulación del mercado, o más liberal, según prefiera no intervenir en la redistribución del ingreso; y otro vertical, que nos dice si el partido defiende valores más o menos tradicionales (de abajo a arriba), como el matrimonio homosexual o la integración de los migrantes. Hemos reproducido el gráfico de la misma forma que arriba (el cero marca la media), tomando variables relacionadas con la inmigración y la redistribución del ingreso. La forma de realizar este y los siguientes análisis ha sido similar a la anterior.

En primer lugar, vemos que hay una diferencia importante en el eje económico entre los partidos de izquierda y derecha, siendo los primeros más favorables a la redistribución. No obstante, AfD, que es el partido más anti-inmigración con diferencia, tiene una posición económica cercana a la media de Alemania, lo que le posiciona claramente como una formación coherente con la “cuarta ola”, aquellos partidos de extrema derecha que se han alejado del liberalismo económico en las últimas décadas, sin abandonar su posición reaccionaria en el ámbito cultural. Los liberales y los conservadores, en cambio, son menos propensos a la redistribución pero tienen posiciones cercanas a la media con respecto a la inmigración, no muy lejanas al SPD.

Además, podemos ver cuál ha sido la estrategia histórica del partido que mejor parado ha salido de las últimas elecciones, los verdes, que ha conseguido ser la tercera fuerza. La formación ha pasado de ser un partido de izquierdas y minoritario, como Die Linke, a tener una posición económica más moderada, cercana al SPD, pero siguiendo sus principios en la defensa del ecologismo, el feminismo o el antirracismo, que atraen al público alemán, especialmente a los jóvenes.

¿Y qué pasa en España?

En el siguiente gráfico podemos observar cuál es la situación de los partidos españoles, de la misma forma que lo hemos hecho con los alemanes.

Aquí podemos ver que el panorama es distinto. Los dos partidos dominantes tienen más votos en rentas bajas, ya que este tipo de personas suelen votar a partidos más al statu quo en nuestro país (parece que en Alemania los pobres están más radicalizados). Tanto Vox como Unidas Podemos son sustancialmente diferentes de sus “homólogos” alemanes (AfD y Die Linke), ya que ambos predominan en rentas altas, aunque la división entre campo y ciudad permanece igual. Esto puede deberse a que ambos partidos alemanes beben mucho de los votantes de la antigua República Democrática, cuyos ingresos son sustancialmente menores a sus vecinos del oeste, mientras que en España no se da ningún resultado similar. De hecho, la base social de la formación morada se asemeja más a los verdes que a ningún otro partido. Por otra parte, CS tiene una posición muy similar al FDP.

¿Y qué pasa con los valores de los partidos? Parece aquí las similitudes son mayores. En este caso hemos tomado únicamente la apertura hacia la inmigración como representante del eje vertical, ya que es uno de los temas más relevante para la opinión pública y las estrategias de los partidos. En el eje económico hemos tenido en cuenta varias preguntas sobre redistribución y política social, aunque su orientación es la contraria al gráfico anterior, es decir, los más proteccionistas están a la derecha (el cero representa la media).

La polarización que evidencia el gráfico en torno a los valores económicos es extrema: mientras que en Alemania los partidos toman posiciones tanto en los extremos como en el centro del eje , en España sólo se evidencian dos posiciones extremas que coinciden con los bloques ideológicos, sin apenas diferencias dentro de estos bloques. Como es sabido, esto dificulta la diversidad de las coaliciones y hace que la diferencia izquierda-derecha mantenga su importancia. Especialmente relevantes son las diferencias, en primer lugar, entre el PSOE y el SPD, que muestra cómo los socialistas españoles mantienen una posición más izquierdista que los alemanes, lo que sin duda favorece su apoyo por parte de las rentas más bajas. En segundo lugar, observamos claramente que VOX es un partido mucho menos favorable a la redistribución que AfD, lo que le aleja de la cuarta ola y le hace más similar al programa económico de la derecha tradicional.

No obstante, en el eje cultural sí observamos un escalonamiento, donde VOX, como AfD, ocupa la posición más conservadora, seguido del PP. Ciudadanos y PSOE ocuparían un puesto similar, lo mismo que con el FDP y el SPD. Por último Unidas Podemos tendría una situación que mezclaría las posiciones culturales de los verdes (Grüne) y las posiciones económicas de la extrema izquierda (Die Linke), quizás fruto de las diferencias entre la base social de las formaciones.

Conclusión

Hemos visto que el sistema de partidos español está notablemente más polarizado, sobre todo en el ámbito cultural, además de que los partidos tradicionales se sustentan en las rentas bajas, al contrario que en Alemania. En el país centro-europeo, en cambio, hemos podido observar que estos apoyan más a los partidos extremistas, quizás por un aumento del descontento hacia la política, y que sus partidos dominantes tienen una posición política más cercana que los nuestros. Además, cabe destacar la oportunidad que puede existir en España para un partido cercano a los verdes alemanes. No obstante, esto solo ha sido un análisis descriptivo para plasmar diferencias relevantes entre ambos sistemas y que veamos que no es fácil extrapolar lecciones de uno al otro.

--

--

Manuel Romero

Sociology and Political Science graduate, MSc in Data Science, interested in quantitative analysis of political behaviour, social values and inequality.