Lenguaje R Essential
El objetivo principal de este curso es que los participantes aprendan los conceptos básicos de programación destinados a importar datos, manipularlos y comunicar los resultados obtenidos, desde una perspectiva de analítica de datos.
Dirigido a
- Directivos
Requisitos
Detalles del curso
Nombre del curso
Lenguaje R Essential
Duración
18 horas.
Modalidad
Online Live
(Instructor en vivo) Presencial
Lenguaje R Essential
Contenido Programático
Módulo 1:
Objetivo: sesión inicial del curso donde se presentan los temas a abordar y la instalación de R y RStudio.
Contenido:
- Por qué R
- Ciclo de un proyecto de análisis de datos
- Entornos de Programación
- Instalar R según sistema operativo
- RStudio: proyecto, estructura, ventanas, directorios de trabajo,RStudio en línea.
- R Vs. RStudio
- Proyectos de Trabajo: crear proyecto, ambiente, directorio de trabajo, estructura de proyectos, ventanas. Consumo de memoria
- Archivos: Scripts R y Rmd.
Ejercicio práctico: Crear un proyecto y dentro del proyecto un script “hello word.R”
Módulo 2:
Objetivo: Comprender el entorno de programación. Aprender a instalar paquetes, cargarlos.
Contenido:
- Crear objetos, variables, nombres variables
- Fundamentos básicos de programación en R. Funciones precargadas
- Consola / Script
- Crear scripts.
- Archivos: R, Rmd, Quarto, RData y RMD.
- Rbase
Ejercicio práctico:
- Crear vectores de distintos tipos
Módulo 3:
Objetivo: Conocer la estructura de datos denominada “vector”
Contenido:
- Paquetes: instalación y carga de paquetes
- Repositorios de paquetes
- Vectores: logical, character, integer, numeric, date. Función mode
- Cómo pedir ayuda
Ejercicio práctico:
- Crear vectores de distintos tipo “mode”
Módulo 4:
Objetivo: Seguir conociendo las principales estructuras de datos que se manejan dentro de R
Contenido:
- “Coerce” dentro de los vectores. Función class
- Trabajando Factores
- Matrices
- Listas
- Acceder a elementos de vectores, listas: índices y atributos. Función print
Ejercicio práctico:
- Practicar elementos de coerce, accesos a elementos de listas.
Módulo 5:
Presentación: Conocer la estructura de datos Data Frame y sus atributos
Objetivo:
- Data Frames
- Importar datos 1- Función read_csv
- Acceso elementos Data Frame
- Visualizar parcial o totalmente, función view
- Funciones str, summary y tabulaciones cruzadas
Ejercicio práctico:
- Crear una Data Frame
Módulo 6:
Objetivo: Comprender cómo obtener subconjuntos condicionados sobre vectores o Data Frames
Contenido:
- Operadores lógicos, tabla de la verdad
- Programación funcional
- Subsets
- Presentación dplyr
- Aplicación de filtros via dplyr filter
Ejercicio práctico:
- Subsets y Filter de Data Frames precargadas
Módulo 7:
Objetivo: Procesamientos de datos encadenados e introducción a la generación de reportes
Contenido:
- Encadenamiento en los procesamientos: operador pipe %>%
- Carga de datos desde excel
- Gráfico de frecuencia de una variable, Análisis Exploratorio de datos
- Aplicación filtros en data frames por funciones máx, min, mean
- Preparar un reporte estático e interactivo
Ejercicio práctico:
- Crear un reporte con un subset de datos
Módulo 8:
Objetivo: Creando datos derivados- mutate aplicado a datos de tipo fechas
Contenido:
- Data Frames aplicar mutate -1
- Trabajando con fechas: month, day, year, convertir formatos POSIX
Ejercicio práctico:
- Crear columnas con día, mes y año en una Data Frame
Módulo 9:
Objetivo: Creando datos derivados- mutate aplicado a datos de tipo “string”
Contenido:
- Data Frames aplicar mutate -2
- Trabajando con strings: str_detect, str_split, str_squish, entre otras.
- Expresiones regulares
- Separate
Ejercicio práctico:
- Usar separate dentro de una data frame vs mutate
Módulo 10:
Objetivo: Comprender funciones condicionales vectorizadas
Contenido:
- Binds por columa o por fila.
- Función ifelse
- Función case_when
- Arrange
Ejercicio práctico:
- Lectura de datos, juntar Data Frames y aplicar condicional.
Módulo 11:
Objetivo: Comprender un flujo completo de importar y transformar los datos con el pipe operator
Contenido:
- Función select
- Aplicación de un pipeline compuesto
Ejercicio práctico:
- Aplicar lo aprendido en Modulos del 7 al 11.
Módulo 12:
Objetivo: agrupación de datos dentro de una Data Frame y obtención de valores sumarios
Contenido:
- Agrupación de datos: group-by
- Presentación estructura tibble
- Sumarizar datos: summarise
- Desagrupar
Ejercicio práctico:
- Agrupar una Data Frame por variable categórica y obtener valores sumarios
Módulo 13:
Objetivo: comprender los datos representados en formatos wide o longer
Contenido:
- Pivoteo de datos
- Formatos de datos long
- Formatos de datos wide
Ejercicio práctico:
- Transformar de formato wide a long una Data Frame
Módulo 14:
Objetivo: comprender las familia de las funciones vectorizadas apply
Contenido:
Programación funcional:
- sapply
- lapply
- apply
- tapply
Ejercicio práctico:
- Aplicar lapply sobre subset de columnas de una Data Frame
Módulo 15:
Objetivo: Introducción al análisis exploratorio de datos e imputación de datos faltantes.
Contenido:
- Lectura de datos JSON
- Inspección de datos
- Introducción Análisis Exploratorio de Datos
- Imputación de datos faltantes
Ejercicio práctico:
- Realizar un reporte y análisis exploratorio sobre un conjunto de datos no mayor 5 variables
Módulo 16:
Objetivo: Abordar las estructuras de control y los ciclos
Contenido:
- Estructuras de control if, else
- Loops, whiles
- Gráficos en Plotly
Ejercicio práctico:
- Mediante un loop generar distintos gráficos y guardarlos.
Módulo 17:
Objetivo: comprender la lógica de las funciones
Contenido:
- Crear funciones: argumentos, default, return
- Vectorizados Vs. Ciclos
Ejercicio práctico:
- Crear dos funciones que contengan una estructura de control
Módulo 18:
Objetivo: Comprender los tipos de gráficos y sus usos. Introducción al sistema ggplot2.
Contenido:
Sistema gráfico ggplot2: grammar of graphics 1
- Tipos de gráficos
- Leyendas
Ejercicio práctico:
- Crear 2 gráficos: 1 de barra, 1 de líneas
Módulo 19:
Objetivo: Comprender los tipos de gráficos y sus usos. Introducción al sistema ggplot2.
Contenido:
Sistema gráfico ggplot2: grammar of graphics 2
- Facets
- Adaptación colores
Ejercicio práctico:
- Crear facets con paleta de colores personalizada.
Módulo 20:
Objetivo: familia de funciones vectorizadas 2
Contenido:
- Funciones vectorizadas purrr
- Bind_rows, bind_cols
- Lecturas en bucle
Ejercicio práctico:
- Lectura de datos en bucle y conformación de una estructura de datos unificada.
Módulo 21:
Objetivo: Comprender la lógica de joins (unión) de Data Frames.
Contenido:
- joins de datos
- Regresión lineal
Ejercicio práctico:
- Aplicar un join de datos y obtener una regresión lineal por grupo de datos
Módulo 22:
Objetivo: Aspectos generales de recursos en línea
Contenido:
- Trabajando con repositorios de códigos
- Control de Versiones
- Cómo pedir ayuda
- Dónde pedir ayuda
Ejercicio práctico:
- Según dinámica de las sesiones previas
Modulo 23:
Objetivo: Introducción al machine learning supervisado y no supervisado
Contenido:
Introducción al machine learning con paquete caret.
- Aprendizaje supervisado: Arboles de decisión
- Aprendizaje no supervisado: clustering
Ejercicio práctico:
- Crear clusters sobre un conjunto de datos
Módulo 24:
Objetivo: crear aplicaciones web interactivas con Shiny 1
Contenido:
Introducción a Shiny 1: Aplicaciones web interactivas
- Estructura UI – Server
- Principios de programación reactiva
Ejercicio práctico:
- crear una aplicación web interactiva mínima.
Módulo 25:
Objetivo: crear aplicaciones web interactivas con Shiny 2
Contenido:
Introducción a Shiny 2: Aplicaciones web interactivas
- Sliders, inputs de texto, inputs numéricos, render de tablas y gráficos
Ejercicio práctico:
- Continúa de sesión anterior: crear una aplicación web interactiva mínima 2