Taller
Introducción a R para Ciencias Sociales
Resumen
Responsable: Daniel M. Giménez
Días y hora: lunes y miércoles, de 20:00 a 22:00
Formato: conferencias a través de Zoom. Se podrán seguir a través de la página del grupo
“Bolsa de trabajo/ Red Laboral de Sociología, Chile” y en la página web del responsable:
danielgimenez.me
Se publica el código y la clave de cada sesión en estos medios.
Contacto: [email protected]
Presentación
El Taller de Introducción a R para Ciencias Sociales es un conjunto de sesiones interactivas para
el estudio del procesador y lenguaje de programación estadístico R for statistics.
Fue diseñado especialmente para profesionales de las ciencias sociales, que hayan adquirido ya
algunas nociones básicas de estadísticas y de uso de hojas de cálculo y programas para
procesamiento estadístico. Su objetivo, por tanto, es permitir que quienes hacen procesamiento
de datos estadísticos con otras herramientas puedan hacerlo con R. Al terminar las 15 sesiones
del taller, cualquier persona que lo haya seguido debiera estar en condiciones de:
- Comprender y realizar operaciones con la lógica de R;
- Manipular objetos (en particular, data frames) para realizar procesamiento estadístico;
- Construir funciones básicas para realizar operaciones de cálculo estadístico y
manipulación de objetos;
- Realizar los procesamientos de estadística descriptiva que realizarían con cualquier otro
software de procesamiento estadístico;
- Programar funcionalmente para realizar operaciones;
- Investigar y encontrar instrucciones para realizar procesamiento estadístico más
avanzado.
1
Para poder cursar y aprovechar este taller, se requiere:
- Conocimiento básico de estadística, al menos descriptiva. En este taller, enfocado al uso
de R, no se dedicará más tiempo del necesario a explicar conceptos o cálculos
estadísticos. Está orientado al aprendizaje de los rudimentos necesarios de R para poder
realizarlos;
- Nociones de procesamiento estadístico. Sirve conocimiento hojas de cálculo o en
cualquier software especializado.
Metodología
El taller se realizará en sesiones interactivas transmitidas a través de Zoom. Para ello es
recomendable tener instalado el software o contar con un navegador moderno (Chrome, Firefox,
Safari) que permita usarlo.
La primera hora de cada sesión estará dedicada a explicar el contenido respectivo. La segunda
hora estará dedicada a resolver problemas y dudas interactivamente.
Para cada sesión se asignarán ejercicios que permitan profundizar y aplicar el contenido
estudiado. Es responsabilidad de cada quien realizarlos. Su realización no podrá ser revisada o
controlada. En la segunda hora de cada sesión podrán resolverse dudas respecto a los ejercicios
de la sesión anterior.
Sesiones
Sesión 1. Partiendo con R
- Trabajando con R: la base y los IDE
- Introducción al entorno de trabajo de RStudio
- R como calculadora
- R como procesador estadístico
- Cálculos estadísticos
- Tabulación
2
- Gráficos
- R como lenguaje de programación: introducción a las funciones y los objetos
- Gestionando ayuda
- ?[función]
- Viñetas
- Manuales
- Libros
- Stackeoverflow
- Listas de correo
Sesión 2. Objetos y funciones: la gramática fundamental de R
- Funciones: nociones básicas
- Objetos
- Extendiendo R: paquetes o librerías
- Trabajando con los archivos: load(), save(), save.image(), read.???(), write.???(), dump(), source()
- Exportando e importando desde otros formatos: los paquetes ‘foreign’ y ‘Hmisc’
Sesión 3. Introducción a los objetos: los vectores
- Los objetos en R
- Tipos de objetos
- El objeto fundamental: el vector
- Vectores atómicos: integers, numéricos, caracteres, factores, fechas, lógicos, NA, NaN
- Vectores compuestos: numéricos y cadenas
3
- Operaciones con vectores
- Acceso a datos y la importancia del índice: la gran utilidad de la función which()
Sesión 4. Objetos: matrices, arrays, listas
- Introducción a las matrices en R
- El índice para más de dos dimensiones y el operador [
- Trabajando y operando con matrices y dimensiones
- Tres o más dimensiones: el array
- Las listas
- Expresiones, fórmulas y otros objetos
- La coerción de objetos
Sesión 5. Objetos: los data frames
- La aproximación conceptual a los datos: las diferencias con la aproximación “visual” (Excel) o
“perceptual” (SPSS)
- Para una panorámica de un data frame: str(), attributes(), mode(), head(), tail()
- Resúmenes de valores de un data frame: summary(), aggregate(), by()
- Operadores [, [[ y $ para acceder a elementos de data frames (y listas)
- Formatos de bases de datos y las funciones melt() y cast(), reshape()
- Categorizando variables escalares: cut()
- Segmentando datos: subset(), split()
- Combinando: rbind(), cbind(), merge()
- Derivados de los data frame: tibbles y otras clases
4
Sesión 6. Operando con objetos
- Condicionales: if(), ifelse(), swtich()
- Loops: for(), while(), repeat()
- La familia apply: apply(), sapply(), lappply(), mapply(), tapply()
- Flujo y control de errores: traceback(), try() y try-catch()
Sesión 7. Funciones y programación funcional I: introducción
- Funciones de la base y los paquetes
- Tipos de funciones y operadores
- Elementos de una función: el llamado, los argumentos y el cuerpo
- Construcción de funciones personalizadas
- Convirtiendo objetos en argumentos y viceversa: parse(), deparse(), substitute(), eval(), get(),
Sesión 8. Funciones y programación funcional II: avanzado
- El problema del entorno: las operaciones funcionales locales y el .GlobalEnv
- return()
- assign()
- Encadenando funciones: la lógica matemática
- Encadenando funciones: la perspectiva semántica del operador %>%
Sesión 9. Trabajando y manipulando texto en R
- Presentando texto: cat() y print()
- Uniendo texto: paste() y paste0()
5
- Dividiendo texto: strsplit()
- Manipulando texto: tolower(), toupper(), substr(), sub(), gsub()
- Buscando patrones de texto: grep() y grepl()
- Las familia regexpr()
Sesión 10. Graficando con R
- Gráficos con la base
- par()
- layout()
- la familia ‘plot’
- Introducción a ggplot2
- Otras librerías de gráficos
Sesión 11. Tabulando con R
- Tablas básicas: table(), ftable(), xtabs(), addmargins()
- Construyendo tablas con el paquete ‘flextable’
- Construyendo tablas con el paquete ‘gt’
- Construyendo tablas con los paquetes ‘basictabler’ y ‘pivottabler’
- Exportando a Excel con ‘openxlsx’
Sesión 12. RMarkdown: generación de documentos docx, pdf, html y ppt
- El código Markdown
- Markdown, LaTex, BibLaTex
6
- Los ‘code chunks’
- Formateando textos
- Introducción a las web apps y shiny
Sesión 13. Estadística descriptiva: medidas de concentración, dispersión y
forma
- Medias, medianas, modas clásicas
- Medias y medianas robustas
- Proporciones y porcentajes con R: prop.table()
- Quantiles y rango intercuantílico
- Desviación estándar, varianza y cuasi-varianza clásicas
- Desviación estándar y varianza robustas
Sesión 14. Estadística descriptiva: distribución y outliers
- Histrogramas y distribución normal
- Curtosis y asimetría
- La función fivenumbers()
- Diagramas de cajas
Sesión 15. Estadística descriptiva: análisis bivariable
- Tablas de contingencia
- Covarianza
- Coeficientes de asociación clásicos, paramétricos y robustos
7