name: portada class: center, middle .linea-superior[] .linea-inferior[] <img src="imagenes/logo_portada2.png" width="200" /> ## Capacitación en R y herramientas de productividad ## Proyecto Ciencia de Datos ## Introducción a _data frames_ y _tidyverse_ --- name: diapo-basica background-image: url("imagenes/fondo2.PNG") background-size: contain; background-position: 100% 0% # Introducción a dataframes y _tidyverse_ --- template: diapo-basica Como mencionamos, los _data frames_ son la estructura de datos a la que nos enfrentaremos más comúnmente y en la que se enfoca este curso -- Para trabajar con estos, el paquete `tidyverse` es de gran ayuda. -- **¿Qué es tidyverse?** Es una serie de paquetes para el trabajo con _data frames_ que funcionan en harmonía, pues fueron programados con la misma filosofía y diseño de datos. -- **Nota:** la implementación de los _data frames_ en el _tidyverse_ es llamada _tibble_ -- Incluye paquetes como: <p float="left"> <img src="imagenes/logo_dplyr.png" style="width:13%; margin-right:20px;" /> <img src="imagenes/logo_tidyr.png"style="width:13%; margin-right:20px;" /> <img src="imagenes/logo_purrr.png"style="width:13%; margin-right:20px;" /> <img src="imagenes/logo_readxl.png" style="width:13%; margin-right:20px;" /> <img src="imagenes/logo_readr.png"style="width:13%; margin-right:20px;" /> <img src="imagenes/logo_haven.png"style="width:13%; margin-right:20px;" /> </p> Listado completo de paquetes [aquí](https://tidyverse.tidyverse.org/) --- template: diapo-basica Instalemos `tidyverse` y aprovechemos de instalar `guaguas` que nos proveerá datos del número de personas nacidas con cada nombre en cada año: ```r install.packages('tidyverse') install.packages('guaguas') ``` -- Luego los cargamos en nuestra sesión de la siguiente forma: ```r library(tidyverse) library(guaguas) ``` --- template: diapo-basica Carguemos la base en nuestro ambiente de trabajo: ```r datos = guaguas ``` -- Algunas exploraciones básicas: Dimensiones: -- ```r dim(datos) ``` ``` ## [1] 858782 5 ``` -- N° de filas: -- ```r nrow(datos) ``` ``` ## [1] 858782 ``` -- N° de columnas: -- ```r ncol(datos) ``` ``` ## [1] 5 ``` --- template: diapo-basica Nombres de las columnas: -- ```r names(datos) ``` ``` ## [1] "anio" "nombre" "sexo" "n" "proporcion" ``` -- Tipos de datos y mirada inicial: -- ```r str(datos) ``` ``` ## tibble [858,782 x 5] (S3: tbl_df/tbl/data.frame) ## $ anio : num [1:858782] 1920 1920 1920 1920 1920 1920 1920 1920 1920 1920 ... ## $ nombre : chr [1:858782] "María" "José" "Juan" "Luis" ... ## $ sexo : chr [1:858782] "F" "M" "M" "M" ... ## $ n : num [1:858782] 2130 984 636 631 426 340 326 289 277 269 ... ## $ proporcion: num [1:858782] 0.1045 0.0483 0.0312 0.031 0.0209 ... ``` --- template: diapo-basica Valores únicos de una variable: -- ```r distinct(datos, sexo) ``` ``` ## # A tibble: 3 x 1 ## sexo ## <chr> ## 1 F ## 2 M ## 3 I ``` -- Conteo de valores únicos de una variable: -- ```r count(datos, sexo) ``` ``` ## # A tibble: 3 x 2 ## sexo n ## <chr> <int> ## 1 F 531038 ## 2 I 318 ## 3 M 327426 ``` --- template:portada