La preparación de los datos es una de las tareas más tediosas y frustrantes a las que nos enfrentamos los científicos de datos. En R tenemos una colección de paquetes que nos permite realizar estas tareas de una forma eficiente: el Tidyverse. En esta introducción a Tidyverse quiero explicar qué es el Tidyverse y cuales son los paquetes que los forman. Dejando para futuras entradas ejemplos de uso concretos de cada uno de los paquetes que forman parte del Tidyverse.
El Tidyverse es una colección de paquetes de R que comparten una filosofía y API común para el tratamiento de datos de tipo tabular. A los que se les llama “tidy data” (datos ordenados).
La filosofía básica de las funciones de los paquetes del Tidyverse es recibir datos “tidy” y devolver como resultados datos del mismo tipo. Al ser los datos de entrada y salida de las funciones del mismo tipo es posible encadenar diferentes funciones para realizar así tareas complejas de una forma eficiente. Por ejemplo, filtrar, agrupar y obtener los estadistas de un conjunto de datos, tarea que se puede realizar con encadenando tres funciones diferentes.
El uso del Tidyverse ofrece ciertas ventajas respecto a trabajar solamente con la base de R y algunos paquetes sueltos. Entre las que se puede destacar:
Para acceder al Tidyverse se pueden instalar cada unos de los paquetes que forman parte de este en nuestro entorno de R. Aunque es más fácil instalar el paquete Tidyverse
y este ya instalar todos los paquetes necesarios. Tarea que se puede escribiendo el siguiente comando en una sesión de R:
install.packages("tidyverse")
Ahora se puede cargar el paquete en una sesión de R, lo que producirá una salida como la siguiente:
── Attaching packages ─────── tidyverse 1.3.0 ──
✓ ggplot2 3.3.3 ✓ purrr 0.3.4
✓ tibble 3.0.5 ✓ dplyr 1.0.3
✓ tidyr 1.1.2 ✓ stringr 1.4.0
✓ readr 1.4.0 ✓ forcats 0.5.0
── Conflicts ────────── tidyverse_conflicts() ──
x dplyr::filter() masks stats::filter()
x dplyr::lag() masks stats::lag()
No debemos preocuparnos por los conflictos ya que lo único que indica es que las funciones filtre()
y lag()
han reemplazados en la sesión a las de la base de R.
Puede que algunos de estos paquetes ya no suenan porque puede ser que ya llevamos tiempo utilizándolos sin saber que forma parte de Tidyverse. Algo que es bueno ya que nos indicará qué conocemos, por lo menos en parte, la filosofía de este conjunto de paquetes.
Tal como se ha visto en la sesión anterior al iniciar el Tidyverse en su versión actual se cargan ocho paquetes. Siendo estos:
ggplot2
: permite crear elegantes representaciones de datos, ofreciendo la posibilidad de una personalización extrema de los gráficos.tibble
: implementación de una estructura de datos que es una versión moderna y mejorada de los tradicionales data.frame
.tidyr
: permite realizar transformaciones eficientes de los datos, cómo puede ser la conversión de filas en columnas.readr
: facilita la lectura de archivos de texto plano, como es el caso de los archivos CSV.purrr
: facilita el trabajo tanto con vectores como con funciones.dplyr
: permite la manipulación de los conjuntos de datos utilizando para ello un lenguaje de acciones sobre los mismos. Facilitando las tareas más habituales como son la creación de variables, selección, filtrado, resumen de los datos.stringr
: facilita enormemente el trabajo con datos categóricos y cadenas de texto.forcats
: contiene múltiples funciones para trabajar con datos categóricos.Además de estos se pueden encontrar en el CRAN más paquetes que comparten la misma filosofía. Entre los destinados a la lectura de datos podemos destacar: readxl
(Excel) y haven
(SAS o SPSS). Por otro lado, para la manipulación de datos podemos encontrar: lubridate
(fechas), hms
(horas, minutos, segundos) y blob
(datos binarios).
En esta entrada hemos visto una introducción al Tidyverse sabiendo lo que es. Dejando para futuras entradas ejemplos de uso de cada uno de estos paquetes.
Calcular adecuadamente el tamaño de la muestra es una parte esencial en el diseño de…
Hoy en día, cuando pensamos en ciencia de datos, lo primero que nos viene a…
Ampliar el espacio de almacenamiento en un sistema Linux es una tarea habitual y crítica…
¿Sabías que puedes copiar y pegar texto, archivos o imágenes entre tu sistema operativo principal…
Hoy publicamos un nuevo video en el canal de YouTube de Analytics Lane basado en…
En el canal de YouTube de Analytics Lane hemos publicado un nuevo video donde explicamos…
This website uses cookies.