Cis

Recordatorio: ideas para futuros TFMs de "ciencia de datos"

Todos los años me toca proponer potenciales TFMs para mis alumnos de donde quiera que sean. Para no olvidarme, anoto aquí esta: bajar el histórico de barómetros del CIS (¿será posible?) y las preguntas que entran a la cocina de la intención de voto. Con ellas, crear un modelo que lo prediga.

Bonus: identificar un cambio estructural tras la entrada de Tezanos al CIS.

CIS, ideología, gráficos y, sí, este blog

Si no estáis suscritos a @politibot en Telegram, hacedlo (y si no usáis Telegram, hacedlo también).

Hoy hablanban del último barómetro del CIS y han tenido la gentileza de mencionarme:

La entrada a la que hacían referencia es esta (a la que tal vez alguien, a quien le corresponda y dada su importancia, debería sacar más punta).

No obstante, el mismo episodio de @politibot incluía

que es un gráfico que, cuanto más miro, menos entiendo: ¿qué barras son las que deben sumar 100%? Ni idea.

rOpenSpain: ahí tiro el guante

La gente de rOpenSci hace cosas a las que merece la pena atento. Tanto por los objetivos como por medios y las formas. Recomiendo seguir sus últimas publicaciones acerca de la profesionalización del proceso de desarrollo de código.

Llevo unos meses jugando con una idea inspirada por rOpenSci: crear un respositorio y un consorcio más o menos formal que desarrolle, mantenga y mejore herramientas (en R) de interés para el procesamiento y análisis de datos ya no científicos sino españoles. Hablo, obviamente, de INE (EPA, EPF, censo, padrón,…), CIS (barómetros, etc.), IGN (Siane,…), encuestas electorales, etc.

Cosas de Twitter (y encuestas)

Hoy (día en que escribo, no en que lees) se han publicado los resultados de intención electoral del CIS (los de los barómetros), de cuya cocina ha salido

Esos números han producido una avalancha de comentarios en Twitter sobre la ecuanimidad del CIS. Sobre todo en el sentido de que hincha los resultados de los partidos de la derecha. Nada nuevo bajo el sol.

Los datos son de la primera semana de abril, del 1 al 8. Lo sorprendente es que con datos de los cinco primeros días del mismo mes, Celeste-Tel, publicó para eldiario.es, un medio de izquierda,

¿Es Vd. de izquierdas o de derechas?

En una escala (de enteros) del 1 al 10, ¿cuál es el punto medio? ¿Cuál indicaría indiferencia entre ambas opciones? No, no es 5; es 5.5.

Cuando el CIS, en sus barómetros, como el de abril, pregunta

obtiene las respuestas

en las que se aprecian fenómenos sesgantes como, por ejemplo:

  • Toda esa gente que se define ni fú ni fá (véase el pico en el 5), va a elegir 5 pero ¿por qué no 6? El 5 está tan alejado del valor medio, 5.5, como 6.
  • Si damos por bueno que la gente que no sabe calcular medias va a cosiderar 5 el valor neutro, quedan 4 casillas de izquierdas (1:4) y 5 de derechas (6:10).
  • Como consecuencia de lo anterior, solo te dejan ser muy, muy, muy, muy de izquierdas pero no muy, muy, muy, muy, muy de izquierdas; pero sí muy, muy, muy, muy, muy de derechas.

Es folk knowledge que España es un país sociológicamente de izquierdas. Y ese conocimiento está fundamentado en esa pregunta (y, obviamente, sus respuestas).

Tres grandes problemas que ocupan pero, según el CIS, no preocupan

Plañe el periodista porque dizque hay tres graves problemas que, a pesar de lo que ocupan (en los medios), a la hora del CIS, no preocupan.

Aggiorno una vieja entrada para ver, por ejemplo, cómo ha variado en los últimos años la preocupación de los encuestados por el CIS acerca de uno de los tres graves problemas:

De hecho, el porcentaje que se muestra indica la proporción de los encuestados que mencionaron el asunto como uno de los tres principales problemas de España. La pregunta, de respuesta abierta, aparece así formulada en los cuestionarios:

El número efectivo de partidos

El número efectivo de partidos es el nombre de una página de la Wikipedia, que contiene la fórmula

$$ N = \frac{1}{\sum_i p_i^2}$$

y excipiente alrededor.

Aplicada a España (usando datos del CIS como proxy),

Como casi siempre, el código:

library(rvest)
library(rvest)
library(reshape2)
library(plyr)
library(zoo)

url <- "http://www.cis.es/cis/export/sites/default/-Archivos/Indicadores/documentos_html/sB606050010.html"

raw <- read_html(url)
tmp <- html_nodes(raw, "table")
tmp <- html_table(tmp[[2]], fill = TRUE)

colnames(tmp)[1] <- "partido"

tmp <- tmp[!is.na(tmp$partido),]
tmp <- tmp[1:30,]

tmp <- melt(tmp, id.vars = "partido")
tmp <- tmp[tmp$value != ".",]
tmp$value <- as.numeric(tmp$value)

tmp$variable <- gsub("ene", "01-", tmp$variable)
tmp$variable <- gsub("abr", "04-", tmp$variable)
tmp$variable <- gsub("jul", "07-", tmp$variable)
tmp$variable <- gsub("oct", "10-", tmp$variable)

tmp$variable <- gsub("-0", "-200", tmp$variable)
tmp$variable <- gsub("-1", "-201", tmp$variable)
tmp$variable <- gsub("-9", "-199", tmp$variable)

tmp$variable <- paste0("01-", tmp$variable)

tmp$variable <- as.Date(tmp$variable, format = "%d-%m-%Y")

dat <- tmp

dat <- ddply(dat, .(variable), transform, total = value / sum(value))
res <- ddply(dat, .(variable), summarize, enp = 1 / (sum(total^2)))

res <- zoo(res$enp, order.by = res$variable)

plot(res, main = "Número efectivo de partidos\nen España(1996-2016)",
        xlab = "", ylab = "número efectivo de partidos")

Barómetros del CIS con R

El CIS realiza barómetros todos los meses menos uno. Pasado un tiempo (es octubre y el último publicado es de julio) coloca los microdatos en su banco de datos.

Aparte de ficheros .pdf que lo explican todo (pero que no dejan de ser .pdf), publica dos ficheros. Uno de datos en ancho fijo (prefijo DA) y otro con código SPSS (prefijo ES) con los consabidos (¿lo son? ¡felicidades si no!) encabezados DATA LIST, VARIABLE LABELS, VALUE LABELS, y MISSING VALUES.