class: center, middle, inverse, title-slide # Programación con R ## Clase 2 ###
### Marília Melo Favalesso --- ## Archivos - [`clase_2.R`](clase_2.R) - [`datos.csv`](datos.csv) - [`datos.txt`](datos.txt) - [`datos.xlsx`](datos.xlsx) - [`tidy_ej.xlsx`](tidy_ej.xlsx) ## Contenido de hoy .pull-left[ - [¿Cómo armar mi tabla de datos?](#tabla) - [Tidyverse](#tidyverse) - [Importar datos a R](#importar) ] .pull-right[ - [Operador pipe (`%>%`)](#pipe) - [tidyr](#tidyr) - [dplyr](#dplyr) ] <!-- Para realizar los ejercicios de esta clase, descargue los archivos que están disponibles en el sitio web de nuestro curso, clase 2. El enlace para acceder al site estará en la descripción de este vídeo. --> --- name: tabla class: middle, center # ¿Cómo armar mi tabla de datos? --- ## ¿Cómo armar mi tabla de datos? <br> .center[<img src="figs/17-tabla.png" style="width: 80%;">] --- ## ¿Cómo armar mi tabla de datos? <br> .center[<img src="figs/18-tabla2.png" style="width: 80%;">] --- ## ¿Cómo armar mi tabla de datos? ### Resumen Características principales de un conjunto de datos ordenado: - cada variable es una columna - cada observación es una linea - cada valor está en una celda diferente .center[<img src="figs/30-tidyverse.png" style="width: 100%;">] --- ## ¿Cómo armar mi tabla de datos? .pull-left[ <br> .center[<img src="figs/19-tabla3.png" style="width: 100%;">] ] .pull-right[ **Descripción de datos:** - Utilice las hojas de datos de su editor (ex. excel) para almacenar información sobre su tabla. - En la primera hoja (hoja 1) dejamos nuestra tabla y en las demás (normalmente la hoja 2, pero si es necesario usamos otras) incluimos información sobre nuestra tabla, como a qué se refieren los datos, descripción de cada variable, alguna observación importante y alguna fecha de edición de esta tabla. ] --- name: tidyverse class: middle, center # Tidyverse ### <https://www.tidyverse.org/> --- ## Tidyverse > El tidyverse es una colección obstinada de 📦 **R** diseñados para la ciencia de datos. Todos los paquetes comparten una filosofía de diseño, una gramática y estructuras de datos subyacentes. .center[<img src="figs/24-tidyverse.png" style="width: 40%;">] - Instale el tidyverse completo con: ```r install.packages("tidyverse") ``` --- ## Tidyverse .center[<img src="figs/25-tidyverse.png" style="width: 100%;">] --- ## Tidyverse ### Tidyverse es una colección de 📦 R - [readr](https://readr.tidyverse.org/) - importación de datos - [tibble](https://tibble.tidyverse.org/) - formato de `data.frame` mejorado - [tidyr](https://tidyr.tidyverse.org/), [dplyr](https://dplyr.tidyverse.org/) - manipulación de datos </mark> - [ggplot2](https://ggplot2.tidyverse.org/) - visualizando de datos - [purrr](https://purrr.tidyverse.org/) - programación avanzada - [forcats](https://forcats.tidyverse.org/) - trabajando con factores - [stringr](https://stringr.tidyverse.org/) - trabajando con cadena de caracteres --- ## Tidyverse ### Tidyverse es una colección de 📦 R - <mark>[readr](https://readr.tidyverse.org/) - importación de datos - <mark>[tibble](https://tibble.tidyverse.org/) - formato de `data.frame` mejorado - <mark>[tidyr](https://tidyr.tidyverse.org/), [dplyr](https://dplyr.tidyverse.org/) - manipulación de datos - <mark>[ggplot2](https://ggplot2.tidyverse.org/) - visualizando de datos - [purrr](https://purrr.tidyverse.org/) - programación avanzada - [forcats](https://forcats.tidyverse.org/) - trabajando con factores - [stringr](https://stringr.tidyverse.org/) - trabajando con cadena de caracteres --- ## Tidyverse ### Flujo de trabajo en ciencia de datos, con **Tidyverse** .center[<img src="figs/26-tidyverse.png" style="width: 80%;">] --- ## Tidyverse El creador de **Tidyverse** es Hadley Wickham y hoy en día muchas personas han contribuido a su expansión. .center[<img src="figs/27-hadley.jpg" style="width: 55%;"> <svg viewBox="0 0 496 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm82.29 357.6c-3.9 3.88-7.99 7.95-11.31 11.28-2.99 3-5.1 6.7-6.17 10.71-1.51 5.66-2.73 11.38-4.77 16.87l-17.39 46.85c-13.76 3-28 4.69-42.65 4.69v-27.38c1.69-12.62-7.64-36.26-22.63-51.25-6-6-9.37-14.14-9.37-22.63v-32.01c0-11.64-6.27-22.34-16.46-27.97-14.37-7.95-34.81-19.06-48.81-26.11-11.48-5.78-22.1-13.14-31.65-21.75l-.8-.72a114.792 114.792 0 0 1-18.06-20.74c-9.38-13.77-24.66-36.42-34.59-51.14 20.47-45.5 57.36-82.04 103.2-101.89l24.01 12.01C203.48 89.74 216 82.01 216 70.11v-11.3c7.99-1.29 16.12-2.11 24.39-2.42l28.3 28.3c6.25 6.25 6.25 16.38 0 22.63L264 112l-10.34 10.34c-3.12 3.12-3.12 8.19 0 11.31l4.69 4.69c3.12 3.12 3.12 8.19 0 11.31l-8 8a8.008 8.008 0 0 1-5.66 2.34h-8.99c-2.08 0-4.08.81-5.58 2.27l-9.92 9.65a8.008 8.008 0 0 0-1.58 9.31l15.59 31.19c2.66 5.32-1.21 11.58-7.15 11.58h-5.64c-1.93 0-3.79-.7-5.24-1.96l-9.28-8.06a16.017 16.017 0 0 0-15.55-3.1l-31.17 10.39a11.95 11.95 0 0 0-8.17 11.34c0 4.53 2.56 8.66 6.61 10.69l11.08 5.54c9.41 4.71 19.79 7.16 30.31 7.16s22.59 27.29 32 32h66.75c8.49 0 16.62 3.37 22.63 9.37l13.69 13.69a30.503 30.503 0 0 1 8.93 21.57 46.536 46.536 0 0 1-13.72 32.98zM417 274.25c-5.79-1.45-10.84-5-14.15-9.97l-17.98-26.97a23.97 23.97 0 0 1 0-26.62l19.59-29.38c2.32-3.47 5.5-6.29 9.24-8.15l12.98-6.49C440.2 193.59 448 223.87 448 256c0 8.67-.74 17.16-1.82 25.54L417 274.25z"></path></svg> <http://hadley.nz/> <br> <svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"></path></svg> [@hadleywickham](https://twitter.com/hadleywickham) ] --- ## Tidyverse ### R for Data Science .pull-left[ .center[ <img src="figs/28-tidyverse.png" style="width: 55%;"> ] ] .center[ <br> "This book will teach you how to do data science with **R**: You’ll learn how to get your data into **R**, get it into the most useful structure, transform it, visualise it and model it. In this book, you will find a practicum of skills for data science. Just as a chemist learns how to clean test tubes and stock a lab, you’ll learn how to clean data and draw plots—and many other things besides. (...)" <https://r4ds.had.co.nz/> ] --- ## Tidyverse Instale y cargue el paquete **Tidyverse** en su computadora. ```r install.packages("tidyverse") library(tidyverse) ``` <img src="figs/29-tidyverse.jpg" style="width: 35%;"> --- name: importar class: middle, center # Importar datos a R --- ## Importar datos a R > Para su alivio, **no es necesario producir su tabla en R** (como lo hemos hecho hasta ahora). Es posible construir la tabla en Excel y luego importar los datos (de HD a nuestra memoria RAM). <br> .center[<img src="figs/21-happy.gif" style="width: 50%;">] <br> > La función de importación dependerá del formato en el que se guardó nuestra tabla (.txt, .csv, .xls, .xlsx). --- ## Importar datos a R ### Working directory - Recuerde que el directorio de trabajo es una 📁 donde **R** lee y guarda archivos. - Deberá decirle a R dónde están los archivos en los que va a trabajar. ```r # Aquí incluirá la dirección donde están sus archivos en su computadora. setwd("C:/Users/mmfav/introduccionalR/clase_2/data") ``` - Deje todos los archivos guardados en esta misma carpeta, esto facilitará su trabajo. - Tenga en cuenta que la dirección aquí se indica con barras invertidas (`/`), a diferencia de lo que usan algunos sistemas operativos (`\`). Por ejemplo: - <svg viewBox="0 0 448 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M0 93.7l183.6-25.3v177.4H0V93.7zm0 324.6l183.6 25.3V268.4H0v149.9zm203.8 28L448 480V268.4H203.8v177.9zm0-380.6v180.1H448V32L203.8 65.7z"></path></svg>: `C:\Users\mmfav\introduccionalR\clase_2\data` - <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg>: `C:/Users/mmfav/introduccionalR/clase_2/data` --- ## Importar datos a R .pull-left[.center[<img src="figs/31-readr.png" style="width: 50%;"> El 📦 **tidyverse** `readr` se usa para importar archivos de texto, como *.txt* o *.csv* a **R**. `reader` transforma archivos de texto en **tibbles**.]] .pull-right[ - `read_csv()`; `read_csv2`: para archivos separados por comas. - `read_tsv()`: para archivos separados por tabulaciones. - `read_delim()`: para archivos separados por un delimitador genérico. El argumento delim `=` indica qué carácter separa cada columna del archivo de texto. - `read_table()`: para archivos de texto tabulares con columnas separadas por espacios. - `read_fwf()`: para archivos compactos que deben tener el ancho de cada columna especificado. - `read_log()`: para archivos de registro estándar. ] --- ## Importar datos a R .pull-left[.center[<img src="figs/31-readr.png" style="width: 50%;"> El 📦 **tidyverse** `readr` se usa para importar archivos de texto, como *.txt* o *.csv* a **R**. `reader` transforma archivos de texto en **tibbles**.]] .pull-right[ - <mark>`read_csv()`; `read_csv2`: para archivos separados por comas.</mark> - `read_tsv()`: para archivos separados por tabulaciones. - <mark>`read_delim()`: para archivos separados por un delimitador genérico. El argumento delim `=` indica qué carácter separa cada columna del archivo de texto.</mark> - `read_table()`: para archivos de texto tabulares con columnas separadas por espacios. - `read_fwf()`: para archivos compactos que deben tener el ancho de cada columna especificado. - `read_log()`: para archivos de registro estándar. ] --- ## Importar datos a R ### readr: `.csv` - Como ejemplo, usaremos la base de datos que proporcionamos en el repositorio ([datos.csv](datos.csv)). - La función para leer los datos es: `read_csv2(file = "archivo.csv")`. ```r datos_csv <- read_csv2(file = "datos.csv") ``` ``` ## i Using "','" as decimal and "'.'" as grouping mark. Use `read_delim()` for more control. ``` ``` ## Rows: 3 Columns: 5 ``` ``` ## -- Column specification ------------------------------------------------------------------------ ## Delimiter: ";" ## chr (1): localidad ## dbl (4): ID, 2001, 2002, 2003 ``` ``` ## ## i Use `spec()` to retrieve the full column specification for this data. ## i Specify the column types or set `show_col_types = FALSE` to quiet this message. ``` <!--- El mensaje devuelto por la función indica qué clase se asignó a cada columna. Tenga en cuenta que el argumento file = representa la ruta al archivo. Si el archivo que se va a leer no está en el directorio de trabajo de su sesión, debe especificar la ruta al archivo. --> --- ## Importar datos a R ### readr: `.csv` - Como ejemplo, usaremos la base de datos que proporcionamos en el repositorio ([datos.csv](datos.csv)). - La función para leer los datos es: `read_csv2(file = "archivo.csv")`. ```r datos_csv ``` ``` ## # A tibble: 3 x 5 ## ID localidad `2001` `2002` `2003` ## <dbl> <chr> <dbl> <dbl> <dbl> ## 1 1 Agricola 10 12 15 ## 2 2 PNI 20 22 25 ## 3 3 Urbano 15 12 10 ``` --- ## Importar datos a R ### readr: `.txt` - Como ejemplo, usaremos la base de datos que proporcionamos en el repositorio ([datos.txt](datos.txt)). - La función para leer los datos es: `read_delim(file = "archivo.txt", delim = "\t")`. ```r datos_txt <- read_delim(file = "datos.txt", delim = "\t") ``` ``` ## Rows: 6 Columns: 4 ``` ``` ## -- Column specification ------------------------------------------------------------------------ ## Delimiter: "\t" ## chr (2): localidad, variable ## dbl (2): ID, value ``` ``` ## ## i Use `spec()` to retrieve the full column specification for this data. ## i Specify the column types or set `show_col_types = FALSE` to quiet this message. ``` --- ## Importar datos a R ### readr: `.txt` > "delim = " es un carácter único utilizado para separar campos dentro de un registro. <br> .center[<img src="figs/46tab.png" style="width: 80%;">] --- ## Importar datos a R ### readr: `.txt` - Como ejemplo, usaremos la base de datos que proporcionamos en el repositorio ([datos.txt](datos.txt)). - La función para leer los datos es: `read_delim(file = "archivo.txt", delim = "\t")`. ```r datos_txt ``` ``` ## # A tibble: 6 x 4 ## ID localidad variable value ## <dbl> <chr> <chr> <dbl> ## 1 1 Agricola temperatura 25 ## 2 1 Agricola pluviosidad 10 ## 3 2 PNI pluviosidad 23 ## 4 2 PNI temperatura 22 ## 5 3 Urbano temperatura 30 ## 6 3 Urbano pluviosidad 30 ``` --- ## Importar datos a R ### Exportar datos (`write_ `) - Para la mayoría de las funciones `read_`, existe una función `write_` correspondiente. - Estas funciones sirven para guardar bases en un formato de archivo específico. - Debe especificar el objeto a exportar y el nombre del archivo con la extensión. ```r # archivo .csv write.csv2(x = objeto, path = "nombre_tabla.csv") # como un .txt write_delim(x = objeto, path = "nombre_tabla.txt", delim = "\t") ``` --- ## Importar datos a R ### Exportar datos (`write_ `) - Para la mayoría de las funciones `read_`, existe una función `write_` correspondiente. - Estas funciones sirven para guardar bases en un formato de archivo específico. - Debe especificar el objeto a exportar y el nombre del archivo con la extensión. ```r # archivo .csv write.csv2(x = datos_csv, path = "nombre_tabla.csv") # como un .txt write_delim(x = datos_txt, path = "nombre_tabla.txt", delim = "\t") ``` --- ## Importar datos a R .pull-left[ ¿Qué pasa si mis datos se guardan como un archivo **excel**? .center[<img src="figs/32-readxl.png" style="width: 50%;"> El 📦 `readxl` se usa para importar archivos de excel, como *.xslx* o *.xls* a **R**. ]] .pull-right[ - Instalar: ```r install.packages("readxl") ``` - Cargar el paquete: ```r library(readxl) ``` - Para abrir nuestro [archivo de repositorio (datos.xlsx)](datos.xlsx): `read_xlsx("archivo.xlsx")` - `readxl` transforma archivos de excel en **tibbles**. --- - **<mark> <font color = "red"> ¡¡No es parte del tidyverse !! </font></mark> ** --- ] --- ## Importar datos a R ### readxl: **.xlsx** **Ejemplo:** ```r datos_xlsx <- read_xlsx("datos.xlsx") ``` --- ## Importar datos a R ### readxl: **.xlsx** **Ejemplo:** ```r datos_xlsx ``` ``` ## # A tibble: 24 x 6 ## ID localidad ano zona var_respuesta temperatura ## <dbl> <chr> <dbl> <chr> <dbl> <dbl> ## 1 1 Puerto Iguazú - Misiones 2001 agrícola NA 25 ## 2 2 Puerto Liberdad - Misiones 2001 agrícola 2 26.7 ## 3 3 San Pedro - Misiones 2001 agrícola 5 24.2 ## 4 4 Tareiri - Misiones 2001 agrícola 4 26.2 ## 5 5 Puerto Iguazú - Misiones 2005 agrícola 6 27 ## 6 6 Puerto Liberdad - Misiones 2005 agrícola NA 25.5 ## 7 7 San Pedro - Misiones 2005 agrícola 7 26 ## 8 8 Tareiri - Misiones 2005 agrícola 9 26.5 ## 9 9 Puerto Iguazú - Misiones 2001 bosque 30 20 ## 10 10 Puerto Liberdad - Misiones 2001 bosque 52 21 ## # ... with 14 more rows ``` --- ## Importar datos a R .pull-left[.center[ <img src="figs/33-tibble.png" style="width: 60%;"> Un **tibble**, o `tbl_df`, es una reinvención moderna del `data.frame`, manteniendo el tiempo que ha demostrado ser efectivo y descartando lo que no lo es. ]] .pull-right[ <br> --- - Es un formato requerido para usar funciones **tidyverse**. - Las variables pueden ser de tipo *numérico (int, dbl)*, *carácter (chr)*, *lógicas (lgl)* y *factor (fctr)* --- - Convertir: > `data.frame` en `tibble`: ```r as_tibble(data) ``` --- ] --- name: pipe class: middle, center # Operador pipe (`%>%`) --- ## Operador pipe (`%>%`) .pull-left[.center[ <img src="figs/34-magrittr.png" style="width: 60%;"> El 📦 `magrittr` ofrece un perador que hace que su código sea más legible: el pipe (`%>%`). ] ] .pull-right[ La idea del operador pipe (`%>%`) es bastante simple: use el valor resultante de la expresión de la izquierda como primer argumento de la función de la derecha. **Por ejemplo**: ```r # suma el vector y luego obtén la √ (sqrt): x <- 1:10 ``` ```r # Sin el pipe: sqrt(sum(x)) ``` ``` ## [1] 7.416198 ``` ```r # Con el pipe: x %>% sum() %>% sqrt() ``` ``` ## [1] 7.416198 ``` ] --- ## Operador pipe (`%>%`) <img src="figs/45-yoda.png" style="width: 15%;"> **"Más intuitivo hacerlo un poco"** .pull-left[ - **SIN** el pipe: ```r piensas( que( orden( la( en( codar() ) ) ) ) ) ``` ] .pull-right[ - **CON** el pipe: ```r codar() %>% en() %>% la() %>% orden() %>% que() %>% piensas() ``` --- **!!** El código no solo es más pequeño, es más intuitivo, la lectura se vuelve mucho más fácil **!!** --- ] --- name: tidyr class: middle, center # tidyr --- ## tidyr .pull-left[.center[ <img src="figs/35-tidyr.png" style="width: 60%;"> El objetivo del 📦 `tidyr` es ayudarte a crear datos ordenados. ] ] .pull-right[ Los datos ordenados son datos donde: - Cada columna es variable. - Cada fila es una observación. - Cada celda es un valor único. --- Tidyr data describe una forma estándar de almacenar datos que se utiliza siempre que sea posible en **tidyverse**. Si se asegura de que sus datos estén ordenados, pasará menos tiempo luchando con las herramientas y más tiempo trabajando en su análisis. --- ] --- ## tidyr - Estas son sus principales funciones: - `separate()`: separar los caracteres en varias columnas - `unite()`: unir datos de varias columnas en una - `drop_na()`: eliminar líneas con NA - `replace_na()`: reemplazar valores NA - `pivot_wider()`: pasa valores de filas a columnas - `pivot_longer()`: pasa valores de columnas a filas <br> <br> <br> --------- > Para ver todas las funciones del paquete, consulte la *cheatsheets*: <https://github.com/rstudio/cheatsheets/blob/master/data-import.pdf> --------- --- ## tidyr ### **separate()** .pull-left[ - Muchas veces, una sola variable de columna capturará múltiples variables, o incluso partes de una variable que simplemente no le importa. .center[ <img src="figs/36-separate.png" style="width: 90%;"> ] ] .pull-right[ - La función `separate()` separa dos o más variables que están concatenadas en la misma columna. ----- - La sintaxis de la función es: ```r datos %>% separate( col = columna_vieja, into = c("nueva_columna_1", "nueva_columna_2"), sep = c("_") # cómo se separan las variables en la columna (ej. ".", "_") ) ``` ] --- ## tidyr ### **separate()** **Por ejemplo**, dividamos la columna "localidad" de la tabla "datos_xlsx" en "ciudad" y "provincia". ```r datos_xlsx %>% separate( col = localidad, # la columna vieja into = c("ciudad", "provincia"), # las nuevas columnas sep = c(" - ") # modo de separación ) ``` .pull-left[ **Antes** <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:160px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 2 </td> <td style="text-align:right;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 5 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;"> 6 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.5 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 7 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 9 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 52 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 63 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 41 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 45 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 49 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 56 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 64 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;"> 20 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> ] .pull-right[ **Despues** <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:160px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> ciudad </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> provincia </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 2 </td> <td style="text-align:right;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 5 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;"> 6 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.5 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 7 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 9 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 52 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 63 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 41 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 45 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 49 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 56 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 64 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;"> 20 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Iguazú </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> San Pedro </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Tareiri </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> ] --- ## tidyr ### **unite()** .pull-left[ - La operación `unite()` es lo opuesto a `separate()`. .center[ <img src="figs/37-united.png" style="width: 90%;"> ] - La función `unite()` une dos variables que están en columnas diferentes. ] .pull-right[ - Toma dos columnas (variables) y las convierte en una. Se usa ampliamente para ensamblar informes finales o tablas para análisis visual. ----- - La sintaxis de la función es: ```r datos %>% unite( col = nueva_columna, columnas_para_juntar, sep = c("_") # cómo se separan las variables en la columna (ej. ".", "_") ) ``` ] --- ## tidyr ### **unite()** **Por ejemplo**, unamos las columnas "zona" y "año". ```r datos_xlsx %>% unite( col = "zona_ano", "zona", "ano", sep = "_" ) ``` .pull-left[ **Antes** <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:180px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;"> 2 </td> <td style="text-align:right;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;"> 5 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;"> 6 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.5 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;"> 7 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;"> 9 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque </td> <td style="text-align:right;"> 52 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque </td> <td style="text-align:right;"> 63 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque </td> <td style="text-align:right;"> 41 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque </td> <td style="text-align:right;"> 45 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque </td> <td style="text-align:right;"> 49 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque </td> <td style="text-align:right;"> 56 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque </td> <td style="text-align:right;"> 64 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano </td> <td style="text-align:right;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano </td> <td style="text-align:right;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;"> 20 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano </td> <td style="text-align:right;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2005 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano </td> <td style="text-align:right;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> ] .pull-right[ **Despues** <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:180px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona_ano </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola_2001 </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola_2001 </td> <td style="text-align:right;"> 2 </td> <td style="text-align:right;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola_2001 </td> <td style="text-align:right;"> 5 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola_2001 </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola_2005 </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;"> 6 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola_2005 </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.5 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola_2005 </td> <td style="text-align:right;"> 7 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola_2005 </td> <td style="text-align:right;"> 9 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque_2001 </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque_2001 </td> <td style="text-align:right;"> 52 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque_2001 </td> <td style="text-align:right;"> 63 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque_2001 </td> <td style="text-align:right;"> 41 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque_2005 </td> <td style="text-align:right;"> 45 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque_2005 </td> <td style="text-align:right;"> 49 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque_2005 </td> <td style="text-align:right;"> 56 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> bosque_2005 </td> <td style="text-align:right;"> 64 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano_2001 </td> <td style="text-align:right;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano_2001 </td> <td style="text-align:right;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano_2001 </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;"> 20 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano_2001 </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano_2005 </td> <td style="text-align:right;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano_2005 </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano_2005 </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> urbano_2005 </td> <td style="text-align:right;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> ] --- ## tidyr ### **replace_na()** y **drop_na()** .pull-left[ Cuando tenemos datos faltantes en nuestra tabla (NA), podemos reemplazar NA con nuevos valores con la función `replace_na()`,... ```r replace_na( list(columna_X = valor) ) ``` ...o podemos eliminar las filas con valores faltantes con `drop_na()`. ```r drop_na( columna ) ``` ] .pull-right[ .center[ <img src="figs/40-NA.png" style="width: 100%;"> ] ] --- ## tidyr ### **replace_na()** **Por ejemplo**, podemos reemplazar las filas con el valor faltante en la columna "var_respuesta" por cero (lineas 1, 6 y 20)... ```r datos_xlsx %>% replace_na(list(var_respuesta = 0)) ``` .pull-left[ **Antes** <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:200px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;font-weight: bold;"> 1 </td> <td style="text-align:left;font-weight: bold;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;font-weight: bold;"> 2001 </td> <td style="text-align:left;font-weight: bold;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;font-weight: bold;"> NA </td> <td style="text-align:right;font-weight: bold;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 2 </td> <td style="text-align:right;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 5 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 4 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 6 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;font-weight: bold;"> 6 </td> <td style="text-align:left;font-weight: bold;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;"> 2005 </td> <td style="text-align:left;font-weight: bold;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;font-weight: bold;"> NA </td> <td style="text-align:right;font-weight: bold;"> 25.5 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 7 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 9 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 30 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 52 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 63 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 41 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 45 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 49 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 56 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 64 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;font-weight: bold;"> 20 </td> <td style="text-align:left;font-weight: bold;"> Tareiri - Misiones </td> <td style="text-align:right;font-weight: bold;"> 2001 </td> <td style="text-align:left;font-weight: bold;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;font-weight: bold;"> NA </td> <td style="text-align:right;font-weight: bold;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> ] .pull-right[ **Después** <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:200px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;font-weight: bold;"> 1 </td> <td style="text-align:left;font-weight: bold;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;font-weight: bold;"> 2001 </td> <td style="text-align:left;font-weight: bold;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;font-weight: bold;"> 0 </td> <td style="text-align:right;font-weight: bold;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 2 </td> <td style="text-align:right;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 5 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 4 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 6 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;font-weight: bold;"> 6 </td> <td style="text-align:left;font-weight: bold;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;"> 2005 </td> <td style="text-align:left;font-weight: bold;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;font-weight: bold;"> 0 </td> <td style="text-align:right;font-weight: bold;"> 25.5 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 7 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 9 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 30 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 52 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 63 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 41 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 45 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 49 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 56 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 64 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;font-weight: bold;"> 20 </td> <td style="text-align:left;font-weight: bold;"> Tareiri - Misiones </td> <td style="text-align:right;font-weight: bold;"> 2001 </td> <td style="text-align:left;font-weight: bold;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;font-weight: bold;"> 0 </td> <td style="text-align:right;font-weight: bold;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> ] --- ## tidyr ### **drop_na()** ...o podemos eliminar las líneas que tiene valores NA. ```r datos_xlsx %>% drop_na(var_respuesta) ``` .pull-left[ **Antes** <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:220px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> NA </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;background-color: #FFCC33 !important;"> 2 </td> <td style="text-align:left;background-color: #FFCC33 !important;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;background-color: #FFCC33 !important;"> 2 </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 5 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 4 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 6 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;"> 6 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> NA </td> <td style="text-align:right;"> 25.5 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 7 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 9 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 30 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 52 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 63 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 41 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 45 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 49 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 56 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 64 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;"> 20 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> NA </td> <td style="text-align:right;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> ] .pull-right[ **Después** <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:220px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 2001 </td> <td style="text-align:left;font-weight: bold;background-color: #FFCC33 !important;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;font-weight: bold;background-color: #FFCC33 !important;"> 2 </td> <td style="text-align:right;font-weight: bold;background-color: #FFCC33 !important;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 5 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 4 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 6 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 7 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 9 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 30 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 52 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 63 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 41 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 45 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 49 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 56 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 64 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;background-color: #FFCC33 !important;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> ] --- ## tidyr .pull-left[### **pivot_longer()** - "Alarga" los datos, aumentando el número de filas y disminuyendo el número de columnas. .center[ <img src="figs/38-piv_longer.png" style="width: 60%;"> ] ```r pivot_longer( cols = Columnas_para_pivotar, names_to = "nombre_nova_columna", values_to = "nombre_col_values" ) ``` ] .pull-right[### **pivot_wider()** - Pasa los datos de columnas para filas, aumentando el número de columnas. .center[ <img src="figs/39-piv_wider.png" style="width: 62%;"> ] ```r pivot_wider( names_from = columna_nombres, values_from = columna_valores ) ``` ] --- ## tidyr ### **pivot_longer()** .pull-left[ **Por ejemplo**, pasemos los años de la tabla "datos_csv" de las columnas a las filas. Los valores los almacenaremos en una columna llamada 'value'. ```r datos_csv ``` <table class="table table-striped table-hover" style="margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;"> ID </th> <th style="text-align:left;"> localidad </th> <th style="text-align:right;"> 2001 </th> <th style="text-align:right;"> 2002 </th> <th style="text-align:right;"> 2003 </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Agricola </td> <td style="text-align:right;"> 10 </td> <td style="text-align:right;"> 12 </td> <td style="text-align:right;"> 15 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> PNI </td> <td style="text-align:right;"> 20 </td> <td style="text-align:right;"> 22 </td> <td style="text-align:right;"> 25 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> Urbano </td> <td style="text-align:right;"> 15 </td> <td style="text-align:right;"> 12 </td> <td style="text-align:right;"> 10 </td> </tr> </tbody> </table> ] .pull-right[ ```r datos_csv %>% pivot_longer( cols = c('2001', '2002', '2003'), names_to = "año", values_to = "value" ) ``` <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:230px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> año </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> value </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Agricola </td> <td style="text-align:left;"> 2001 </td> <td style="text-align:right;"> 10 </td> </tr> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Agricola </td> <td style="text-align:left;"> 2002 </td> <td style="text-align:right;"> 12 </td> </tr> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Agricola </td> <td style="text-align:left;"> 2003 </td> <td style="text-align:right;"> 15 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> PNI </td> <td style="text-align:left;"> 2001 </td> <td style="text-align:right;"> 20 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> PNI </td> <td style="text-align:left;"> 2002 </td> <td style="text-align:right;"> 22 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> PNI </td> <td style="text-align:left;"> 2003 </td> <td style="text-align:right;"> 25 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> Urbano </td> <td style="text-align:left;"> 2001 </td> <td style="text-align:right;"> 15 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> Urbano </td> <td style="text-align:left;"> 2002 </td> <td style="text-align:right;"> 12 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> Urbano </td> <td style="text-align:left;"> 2003 </td> <td style="text-align:right;"> 10 </td> </tr> </tbody> </table></div> ] --- ## tidyr ### **pivot_wider()** ¿Qué pasa si quiero revertir la tabla a su formato original? ```r datos_csv2 %>% pivot_wider( names_from = año, values_from = value ) ``` <table class="table table-striped table-hover" style="margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;"> ID </th> <th style="text-align:left;"> localidad </th> <th style="text-align:right;"> 2001 </th> <th style="text-align:right;"> 2002 </th> <th style="text-align:right;"> 2003 </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Agricola </td> <td style="text-align:right;"> 10 </td> <td style="text-align:right;"> 12 </td> <td style="text-align:right;"> 15 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> PNI </td> <td style="text-align:right;"> 20 </td> <td style="text-align:right;"> 22 </td> <td style="text-align:right;"> 25 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> Urbano </td> <td style="text-align:right;"> 15 </td> <td style="text-align:right;"> 12 </td> <td style="text-align:right;"> 10 </td> </tr> </tbody> </table> --- name: dplyr class: middle, center # dplyr --- ## dplyr .pull-left[ <img src="figs/41-dplyr.png" style="width: 60%;"> El 📦 `dplyr` es lo paquete más útil para realizar la transformación de datos, combinando simplicidad y eficiencia de una manera elegante. ] .pull-right[ - Los scripts **R** que hacen un uso inteligente de los verbos `dplyr` y las facilidades del operador `pipe` tienden a ser más legibles y organizados sin perder velocidad de ejecución. --- - Las principales funciones de `dplyr` son: - `select()`: seleccionar columnas - `arrange()`: ordenar la base de datos - `filter()`: filtrar las lineas - `mutate()`: crear/modificar columnas - `group_by()`: agrupar la base de datos - `summarise()`: resume la base - `relocate()`: reordenar columnas - `left_join()`, `right_join()` y `full_join()`: juntar ≠ bases de datos. ] --- ## dplyr ### **select()** - Usamos para seleccionar columnas. - Los argumentos son los nombres de las columnas que desea seleccionar. ```r datos %>% select(nombre_col, nombre_col2) ``` - Para eliminar columnas de la base, agregue un "menos" (`-`) antes de la selección. ```r datos %>% select(-nombre_col, -nombre_col2) ``` - También disponemos de otras funciones auxiliares: - `starts_with()`: para columnas que comienzan con texto estándar - `ends_with()`: para columnas que terminan con texto estándar - `contiene()`: para columnas que contienen texto estándar --- ## dplyr ### **select()** Seleccionemos las columnas "localidad" y "año" de la tabla "datos_xlsx". ```r datos_xlsx %>% select(localidad, ano) ``` <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:300px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> </tr> </tbody> </table></div> --- ## dplyr ### **select()** Seleccione todos los datos excepto "ID" y "temperatura". ```r datos_xlsx %>% select(-ID, -temperatura) ``` <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:300px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> NA </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 2 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 5 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 6 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> NA </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 7 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 9 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 30 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 52 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 63 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 41 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 45 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 49 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 56 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 64 </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 20 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 14 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 16 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> NA </td> </tr> <tr> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 29 </td> </tr> <tr> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 30 </td> </tr> <tr> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 16 </td> </tr> <tr> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 18 </td> </tr> </tbody> </table></div> --- ## dplyr ### **arrange()** - Para ordenar líneas. - Los argumentos son las columnas por las que queremos ordenar las filas. ```r datos %>% arrange(columna_x) ``` - También podemos ordenar en orden descendente usando la función `desc()` ```r datos %>% arrange(desc(columna_x)) ``` - ¡Y ordena más de una columna al mismo tiempo! ```r datos %>% arrange(columna_y, desc(columna_x)) ``` --- ## dplyr ### **arrange()** - En el siguiente ejemplo, ordenamos las líneas base en orden ascendente de "response_var". .pull-left[ **Antes** ```r datos_xlsx %>% select(ano, var_respuesta) ``` <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:255px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> NA </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 2 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 5 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 6 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> NA </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 7 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 9 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 30 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 52 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 63 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 41 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 45 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 49 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 56 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 64 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 20 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 14 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 16 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> NA </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 29 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 30 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 16 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 18 </td> </tr> </tbody> </table></div> ] .pull-right[ **Después** ```r datos_xlsx %>% select(ano, var_respuesta) %>% * arrange(ano, desc(var_respuesta)) ``` <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:230px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 63 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 52 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 41 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 30 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 20 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 16 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 14 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 5 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 4 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> 2 </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> NA </td> </tr> <tr> <td style="text-align:right;"> 2001 </td> <td style="text-align:right;"> NA </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 64 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 56 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 49 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 45 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 30 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 29 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 18 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 16 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 9 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 7 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> 6 </td> </tr> <tr> <td style="text-align:right;"> 2005 </td> <td style="text-align:right;"> NA </td> </tr> </tbody> </table></div> ] --- ## dplyr ### **filter()** - Para filtrar valores de una columna base, usamos la función `filter()`. ```r datos %>% filter(columna < value) ``` - Por ejemplo, podemos seleccionar datos con una "var_respuesta" superior a 50. ```r datos_xlsx %>% filter(var_respuesta > 50) ``` <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;"> ID </th> <th style="text-align:left;"> localidad </th> <th style="text-align:right;"> ano </th> <th style="text-align:left;"> zona </th> <th style="text-align:right;"> var_respuesta </th> <th style="text-align:right;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 52 </td> <td style="text-align:right;"> 21 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 63 </td> <td style="text-align:right;"> 22 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 56 </td> <td style="text-align:right;"> 24 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 64 </td> <td style="text-align:right;"> 26 </td> </tr> </tbody> </table> --- ## dplyr ### **filter()** - También podemos usar el filtro con caracteres. ```r datos_xlsx %>% filter(zona %in% "urbano") ``` <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;"> ID </th> <th style="text-align:left;"> localidad </th> <th style="text-align:right;"> ano </th> <th style="text-align:left;"> zona </th> <th style="text-align:right;"> var_respuesta </th> <th style="text-align:right;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 20 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 14 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;"> 20 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 29 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 30 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 16 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 18 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table> --- ## dplyr ### **mutate()** - Para modificar una columna existente o crear una nueva. - Aplicaremos una función. - La regla es que el resultado de la operación devuelve un vector con una longitud igual al número de filas en la base. ```r datos_xlsx %>% mutate(columna = columna + función) ``` - También puede crear/modificar tantas columnas como desee dentro de la misma mutación. ```r datos_xlsx %>% mutate(columna = columna+función, nueva_columna = columna/valor) ``` --- ## dplyr ### **mutate()** - Por ejemplo, digamos que descubrió un error en su tabla. Agregaste uno individuo más en la columna "var_respuesta" y ahora necesitas quitar ese valor. ```r datos_xlsx %>% mutate(var_respuesta = var_respuesta - 1) ``` <div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:270px; overflow-x: scroll; width:100%; "><table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ID </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> localidad </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> ano </th> <th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;"> zona </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> var_respuesta </th> <th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;"> temperatura </th> </tr> </thead> <tbody> <tr> <td style="text-align:right;"> 1 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 2 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 1 </td> <td style="text-align:right;"> 26.7 </td> </tr> <tr> <td style="text-align:right;"> 3 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 4 </td> <td style="text-align:right;"> 24.2 </td> </tr> <tr> <td style="text-align:right;"> 4 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 3 </td> <td style="text-align:right;"> 26.2 </td> </tr> <tr> <td style="text-align:right;"> 5 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 5 </td> <td style="text-align:right;"> 27.0 </td> </tr> <tr> <td style="text-align:right;"> 6 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 25.5 </td> </tr> <tr> <td style="text-align:right;"> 7 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 6 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 8 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> agrícola </td> <td style="text-align:right;"> 8 </td> <td style="text-align:right;"> 26.5 </td> </tr> <tr> <td style="text-align:right;"> 9 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 29 </td> <td style="text-align:right;"> 20.0 </td> </tr> <tr> <td style="text-align:right;"> 10 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 51 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 11 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 62 </td> <td style="text-align:right;"> 22.0 </td> </tr> <tr> <td style="text-align:right;"> 12 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 40 </td> <td style="text-align:right;"> 25.0 </td> </tr> <tr> <td style="text-align:right;"> 13 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 44 </td> <td style="text-align:right;"> 23.0 </td> </tr> <tr> <td style="text-align:right;"> 14 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 48 </td> <td style="text-align:right;"> 21.0 </td> </tr> <tr> <td style="text-align:right;"> 15 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 55 </td> <td style="text-align:right;"> 24.0 </td> </tr> <tr> <td style="text-align:right;"> 16 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> bosque </td> <td style="text-align:right;"> 63 </td> <td style="text-align:right;"> 26.0 </td> </tr> <tr> <td style="text-align:right;"> 17 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 19 </td> <td style="text-align:right;"> 28.0 </td> </tr> <tr> <td style="text-align:right;"> 18 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 13 </td> <td style="text-align:right;"> 29.4 </td> </tr> <tr> <td style="text-align:right;"> 19 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 15 </td> <td style="text-align:right;"> 32.4 </td> </tr> <tr> <td style="text-align:right;"> 20 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2001 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> NA </td> <td style="text-align:right;"> 30.0 </td> </tr> <tr> <td style="text-align:right;"> 21 </td> <td style="text-align:left;"> Puerto Iguazú - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 28 </td> <td style="text-align:right;"> 29.0 </td> </tr> <tr> <td style="text-align:right;"> 22 </td> <td style="text-align:left;"> Puerto Liberdad - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 29 </td> <td style="text-align:right;"> 32.5 </td> </tr> <tr> <td style="text-align:right;"> 23 </td> <td style="text-align:left;"> San Pedro - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 15 </td> <td style="text-align:right;"> 33.0 </td> </tr> <tr> <td style="text-align:right;"> 24 </td> <td style="text-align:left;"> Tareiri - Misiones </td> <td style="text-align:right;"> 2005 </td> <td style="text-align:left;"> urbano </td> <td style="text-align:right;"> 17 </td> <td style="text-align:right;"> 33.6 </td> </tr> </tbody> </table></div> --- ## dplyr ### **summarize()** - Es la técnica de resumir un conjunto de datos utilizando alguna métrica de interés. - Media, mediana, varianza, frecuencia, proporción, por ejemplo, son tipos de resumen que aportan información diferente sobre una variable. ```r datos %>% summarize(función(columna)) ``` - No vamos a explorar esta función aquí, ya que tendremos una clase solo sobre estadística descriptiva en **R**. ```r datos_xlsx %>% summarize(media = mean(temperatura), na.rm = TRUE) ``` ``` ## # A tibble: 1 x 2 ## media na.rm ## <dbl> <lgl> ## 1 26.5 TRUE ``` --- ## dplyr ### **relocate()** - Para reubicar columnas. - De forma predeterminada, coloca una o más columnas al comienzo de la base. ```r # Coloque las columnas 5 y 4 al principio de la tabla. datos %>% relocate(columna5, columna4) ``` - Podemos usar los argumentos `.after =` y `.before =` para realizar cambios más complejos. ```r # Poner la columna 2 después de la columna 4 datos %>% relocate(columna2, .after = columna4) ``` ```r # Poner la columna 2 antes de la columna 4 datos %>% relocate(columna2, .before = columna4) ``` --- ## dplyr ### **rename()** - Cambia los nombres de variables individuales (columnas) usando la sintaxis `nuevo_nombre = viejo_nombre`. ```r datos %>% rename(columna_x = columna.x) ``` - Por ejemplo, vamos cambiar el nombre de la columna "localidad" por "municipalidad". .pull-left[ **Antes** ```r datos_xlsx %>% names() ``` ``` ## [1] "ID" "localidad" "ano" "zona" "var_respuesta" ## [6] "temperatura" ``` ] .pull-right[ **Después** ```r datos_xlsx %>% rename(municipalidad = localidad) %>% names() ``` ``` ## [1] "ID" "municipalidad" "ano" "zona" "var_respuesta" ## [6] "temperatura" ``` ] --- ## dplyr ### **left_join()**, **right_join()** y **full_join()** - Lo usamos para unir dos tablas en una. ```r # Une la tabla 'datos' a la tabla 'datos2' por 'columna_x' # Mantiene los elementos de la tabla 'datos' y excluye elementos adicionales de 'datos2'. datos %>% left_join(datos2, by = "columna_x") # Mantiene los elementos de la tabla 'datos2' y excluye elementos adicionales de 'datos'. datos %>% right_join(datos2, by = "columna_x") # Mantiene los valores de las dos tablas. datos %>% full_join(datos2, by = "columna_x") ``` --- class: clear, center ## ¡¡Fin de clase!! .center[<img src="figs/43-fim.jpg" style="width: 80%;">] --- class: middle <br> <br> <br> ### Soma dos quadrados - <svg viewBox="0 0 496 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg> [Soma-Dos-Quadrados/introduccionalR](https://github.com/Soma-dos-Quadrados/introduccionalR) - <svg viewBox="0 0 576 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"></path></svg> [/somaquadrados](https://www.youtube.com/channel/UC8_OHjnszxRiit92ZJlNH4A) - <svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M391.17,103.47H352.54v109.7h38.63ZM285,103H246.37V212.75H285ZM120.83,0,24.31,91.42V420.58H140.14V512l96.53-91.42h77.25L487.69,256V0ZM449.07,237.75l-77.22,73.12H294.61l-67.6,64v-64H140.14V36.58H449.07Z"></path></svg> [/somadosquadrados](https://www.twitch.tv/somaquadrados) - <svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"></path></svg> [@somadosquadrados](https://twitter.com/somaquadrados) ### Marília Melo Favalesso - <svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg> [mariliabioufpr@gmail.com](mariliabioufpr@gmail.com) - <svg viewBox="0 0 496 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm82.29 357.6c-3.9 3.88-7.99 7.95-11.31 11.28-2.99 3-5.1 6.7-6.17 10.71-1.51 5.66-2.73 11.38-4.77 16.87l-17.39 46.85c-13.76 3-28 4.69-42.65 4.69v-27.38c1.69-12.62-7.64-36.26-22.63-51.25-6-6-9.37-14.14-9.37-22.63v-32.01c0-11.64-6.27-22.34-16.46-27.97-14.37-7.95-34.81-19.06-48.81-26.11-11.48-5.78-22.1-13.14-31.65-21.75l-.8-.72a114.792 114.792 0 0 1-18.06-20.74c-9.38-13.77-24.66-36.42-34.59-51.14 20.47-45.5 57.36-82.04 103.2-101.89l24.01 12.01C203.48 89.74 216 82.01 216 70.11v-11.3c7.99-1.29 16.12-2.11 24.39-2.42l28.3 28.3c6.25 6.25 6.25 16.38 0 22.63L264 112l-10.34 10.34c-3.12 3.12-3.12 8.19 0 11.31l4.69 4.69c3.12 3.12 3.12 8.19 0 11.31l-8 8a8.008 8.008 0 0 1-5.66 2.34h-8.99c-2.08 0-4.08.81-5.58 2.27l-9.92 9.65a8.008 8.008 0 0 0-1.58 9.31l15.59 31.19c2.66 5.32-1.21 11.58-7.15 11.58h-5.64c-1.93 0-3.79-.7-5.24-1.96l-9.28-8.06a16.017 16.017 0 0 0-15.55-3.1l-31.17 10.39a11.95 11.95 0 0 0-8.17 11.34c0 4.53 2.56 8.66 6.61 10.69l11.08 5.54c9.41 4.71 19.79 7.16 30.31 7.16s22.59 27.29 32 32h66.75c8.49 0 16.62 3.37 22.63 9.37l13.69 13.69a30.503 30.503 0 0 1 8.93 21.57 46.536 46.536 0 0 1-13.72 32.98zM417 274.25c-5.79-1.45-10.84-5-14.15-9.97l-17.98-26.97a23.97 23.97 0 0 1 0-26.62l19.59-29.38c2.32-3.47 5.5-6.29 9.24-8.15l12.98-6.49C440.2 193.59 448 223.87 448 256c0 8.67-.74 17.16-1.82 25.54L417 274.25z"></path></svg> [www.mmfava.com](www.mmfava.com) - <svg viewBox="0 0 496 512" style="height:1em;position:relative;display:inline-block;top:.1em;fill:#000000;" xmlns="http://www.w3.org/2000/svg"> <path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg> [ /mmfava](https://github.com/mmfava)