ICP0506 - Diapos 1





Programación para las Ciencias Sociales
Andrés Cruz
2020-08-13 - Primera clase

Índice

  1. Introducción: ¿por qué hacer código en ciencias sociales?

  2. Aspectos formales

  3. R, RStudio y el tidyverse

  4. Trabajo en RStudio Cloud.

  5. Encuesta de cierre

¿Por qué hacer código en ciencias sociales?

Interfaz gráfica (PSPP) vs código (R en RStudio). Elaboración propia.

Interfaz gráfica (PSPP) vs código (R en RStudio). Elaboración propia.

A. Flexibilidad y capacidad (I)

Fuente: [NBC News (2019)](https://www.nbcnews.com/news/us-news/san-francisco-uses-tech-clear-more-8-000-pot-cases-n975866)

Fuente: NBC News (2019)

A. Flexibilidad y capacidad (II)

  • Las herramientas que veremos en este curso son de código abierto (software libre).
  • Cualquier persona puede tomar cualquier herramienta, ver su código y adaptarlo como mejor le parezca y necesite.
  • Resultados de esta comunidad de software libre:

A. Flexibilidad y capacidad (III)

Fuente: [`@leonugo`, 2018](https://twitter.com/leonugo/status/1014298553500479489)

Fuente: @leonugo, 2018

B. Trayectorias tecnológicas (I)

Interés en Google para diferentes programas de estadística/econometría en Latinoamérica, 2004-2020. Fuente: Urdinez & Cruz (2020).

Interés en Google para diferentes programas de estadística/econometría en Latinoamérica, 2004-2020. Fuente: Urdinez & Cruz (2020).

B. Trayectorias tecnológicas (II)

Fuente: [Agarwal (2018)](https://onlinelibrary.wiley.com/doi/10.1111/puar.12979)

Fuente: Agarwal (2018)

C. Reproducibilidad (I)

  • Gracias al código:
    • Podemos repetir nuestros análisis todas las veces que queramos, con las modificaciones que queramos.
    • Podemos automatizar procesos tediosos.
    • Podemos compartir la totalidad de nuestro flujo de trabajo con colegas.
    • Podemos buscar ayuda con facilidad: nuestro código es igual de transparente que el de los/as demás, y los mensajes de error están estandarizados.

C. Reproducibilidad (II) - Ciencia social reproducible

“La única forma de comprender y evaluar un análisis empírico en su totalidad es conociendo el proceso exacto por el cual se generaron los datos y se realizó el análisis” (King, 1995, p. 444).

  • La existencia de código es crucial para la replicación de un análisis empírico cuantitativo.
  • El código incluso ayuda a declarar diseños de investigación antes de que estos se realicen, como es la premisa del nuevo proyecto DeclareDesign.

Aspectos formales

Temas del curso (I)

  • I. Introducción (a R, RStudio y R Markdown)

  • II. Manejo de bases de datos

Temas del curso (II)

  • III. Visualización de datos
Promedio de esperanza de vida por continente, 2007. Fuente: [Healy, 2018](http://socviz.co/lookatdata.html#what-makes-bad-figures-bad)

Promedio de esperanza de vida por continente, 2007. Fuente: Healy, 2018

Temas del curso (III)

  • IV. Búsqueda efectiva de ayuda

  • V. Manejo avanzado de bases de datos

  • VI. Análisis de texto

Temas del curso (IV)

  • VII.+VIII Minería de datos web y R avanzado
Relación de palabras para 100 tweets de S. Piñera y M. Bachelet. Fuente: [`@AlcratruzDaniel`, 2018](https://twitter.com/AlcatruzDaniel/status/1029946262899052544)

Relación de palabras para 100 tweets de S. Piñera y M. Bachelet. Fuente: @AlcratruzDaniel, 2018

Temas del curso (V)

  • IX. Datos espaciales y mapas
Trayectoria de emisiones per capita en la OCDE, 1997-2011. Elaboración propia.

Trayectoria de emisiones per capita en la OCDE, 1997-2011. Elaboración propia.

Temas del curso (VI)

  • X. Replicación y generación de reportes

  • Cierre (ciencia social computacional, comunidad de R)

Metodología de trabajo

  • Cátedras con enfoque práctico.

    • 40 minutos + 10 minutos de break + 40 minutos
  • “Horas de oficina” luego de las clases

    • Tras 10 minutos de break, 40 minutos
    • Ejercicios extra, dudas, ideas, etc.
  • Ayudantías de ejercicios (por fijar).

  • Se subirán las grabaciones de todas las cátedras y ayudantías, más algunas cápsulas asincrónicas.

  • Dos tipos de material: mínimo y “torpedos” (complementario).

Evaluaciones

  • Tres tareas. Solo se evaluarán las dos mejores (30% c/u).

    • Una serie de ejercicios, tienen seis días y fracción para la entrega.
  • Proyecto final. Individual o en parejas.

    • Presentación flash (15%).
    • Informe final (25%).
  • Las pautas de evaluación siempre se entregarán en conjunto con las instrucciones.

  • En el programa hay más detalles importantes (p.e., política de recorrección).

Otros temas importantes

¿Preguntas? ¿Comentarios?

R, RStudio y el tidyverse

Introducción: R, RStudio, paquetes

  • R es un lenguaje de programación, especialmente desarrollado para estadística.
  • RStudio es una “máscara” para R, que simplifica nuestro trabajo.
  • La comunidad de R ha desarrollado más de 16 mil paquetes.
    • Añaden nuevas funciones a R (y, en muchos casos, lo simplifican).
    • Durante el curso utilizaremos varios, principalmente el tidyverse.

R

  • Es un lenguaje de programación especialmente diseñado para análisis de datos y estadística.
  • Su rango de aplicación es muy variado: ciencias sociales, finanzas, bioestadística, biología computacional, etcétera.
  • Algunas características técnicas:
    • Es un lenguaje de “scripting”: podemos correr una línea a la vez, no necesitamos compilar el archivo completo (Li et al., 2011). Otro ejemplo: Python. Contrajemplo: C++.
    • Está orientado a objetos: en R, prácticamente todo es un objeto, incluidas las funciones (Morandat et al., 2012)..

RStudio

  • Es una “máscara” para ejecutar R, con una interfaz gráfica que hace algunas cosas más sencillas.
  • La versión de escritorio del programa tiene licencia de software libre.

RStudio: paneles

Paneles de RStudio. Fuente: Elaboración propia.

Paneles de RStudio. Fuente: Elaboración propia.

Paquetes: tidyverse

  • El tidyverse es un ecosistema de paquetes, desarrollado para hacer sentido entre sí.
  • Incluye paquetes coherentes entre sí para hacer manejo de datos (dplyr, tidyr), visualización (ggplot2), trabajo con texto (stringr), minería de datos web (rvest, httr), programación (purrr, magrittr), entre otras actividades generales.

RStudio Cloud

  • Ahora ingresa a RStudio Cloud, a través de este link.

  • Debes crear una cuenta con tu correo UC.

  • Tenemos un espacio del curso. Luego, trabajaremos en proyectos específicos.

  • Para cada proyecto deben crear su copia personal, en la parte superior derecha de la pantalla (“Save a permanent copy”). En ella podrán colocar sus comentarios.

Encuesta de cierre