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.

Problemas de estos datos:

  • Las variables, los códigos y las etiquetas cambian de barómetro en barómetro: aunque hay unas cuantas preguntas que se repiten en todos, cada barómetro se dedica a un tema distinto.
  • Los datos no son planos: según lo que el entrevistado respondió en aquí, se le pregunta otra cosa allá.
  • elige-tu-propia-a-ventura-1

  • Aunque el paquete memisc de R es capaz de leer ficheros de ancho fijo con metadatos en SPSS (busca spss.fixed.file aquí), no puede con todos: el formato tiene atajos y excepciones (además del asunto de las respuestas condicionales) que memisc no contempla.

No obstante, por el momento, tenemos opciones solo parcialmente satisfactorias:

  • Leer el fichero de datos como de ancho fijo. Si al final solo te interesan unas pocas variables, puede sobrarte. Les asignas los códigos a mano y ya. Si tienes suerte, además, no serán de las de respuesta condicional (lo probé, lo sé).
  • Usar PSPP, como aquí (no la he probado).
  • Usar SPSS (hummmmm…)
  • Usar ingeniería social (i.e., engañar a alguien que tenga SPSS).

De todos modos, me consta que dentro del CIS hay gente si no trabajando en el asunto (es decir, exportar datos de barómetros a algo que pueda ser importado en R fácilmente) dando guerra para que se haga.

En cualquier caso y por terminar: si el CIS me llama, les implemento la cosa gratis. Gratis total.

6 comentarios sobre “Barómetros del CIS con R

  1. daniel 5 octubre, 2016 11:26

    Hoy leo en R-bloggers sobre haven1.0 que sirve para importar datos por ejemplo de SPSS, no sé si con esto es suficiente: For SPSS, haven provides labelled_spss() that also models user defined values and ranges.

  2. Carlos J. Gil Bellosta 5 octubre, 2016 22:49

    Respuesta breve: no.
    Respuesta larga: `haven` importa ficheros nativos de SPSS (.sav); sin embargo, los microdatos del CIS son ficheros de códigos en formato de ancho fijo acompañados de código en SPSS que contiene los correspondientes metadatos (anchos de columnas, etiquetas de los códigos, etc.).

  3. rvaquerizo 6 octubre, 2016 13:41

    Y las descripciones y anchos de columna en PDF. Leer algo puntual es posible, pero automatizar esta labor requiere mucho tiempo.

  4. Carlos J. Gil Bellosta 6 octubre, 2016 19:03

    En pdf, pero también embebidos en el código de SPSS. De ahí se pueden extraer más fácilmente.

  5. Jose Luis Cañadas Reche 7 octubre, 2016 0:05

    Yo si probé en su día, el código de Gonzalo Rivero con pspp y funciona bien.

Los comentarios están desabilitados.