Indice
Il tidyverse
Il tidyverse è un insieme di pacchetti di R progettati per la data science. I pacchetti principali - dplyr, tidyr, stringr, forcats, ggplot2 - condividono approccio, struttura e sintassi.
I pacchetti sono stati progettati allo scopo di semplificare molte operazioni sui dati, dall'importazione (readr), alla riorganizzazione dei dataset (tidyr), alla trasformazione e gestione delle variabili (dplyr), comprese quelle categoriali (forcats) e di testo (stringr), fino alla programmazione (purrr) e alla costruzione e gestione dei modelli (tidymodels).
Una prima facilitazione è rappresentata dalla classe tibble costruita intorno ai dataframe. Inoltre, è più facile selezionare le variabili, e quindi: estrarre righe e colonne in base a criteri, rinominare e ricodificare le variabili.
Per quanto riguarda la scrittura del codice, grazie al pipe operator (%>%
), non è necessario scrivere funzioni innestate (una dentro l'altra) o molti oggetti intermedi, mentre le funzioni della famiglia map
, del pacchetto purrr, semplificano l'uso dei cicli (ad es. for, analogamento ad apply
, sapply
ecc.). Il pacchetto broom aiuta poi a gestire i risultati di numerosi modelli, trasformando i diversi oggetti in dataframe e tabelle, facilmente trasformabili e rappresentabili in grafici.
La grammatica del tidyverse, infine, è parente stretta della grammatica dei grafici: ggplot2 (che, per ragioni diciamo storiche, usa il +
invece che %>%
) viene infatti installato e caricato insieme agli altri pacchetti.
Tutte le funzioni si applicano a dataframe (tibble e no), ragione per cui esistono pacchetti che trasformano altri tipi di oggetti in dataframe: ad esempio Broom, ggfortify (usato alla voce serie storiche), o sf (per le mappe e i dati spaziali).
Installazione
I pacchetti possono essere installati singolarmente, o tutti insieme con il comando:
install.packages("tidyverse)
Analogamente, possono essere richiamati uno alla volta, ad es.:
library(dplyr)
O tutti insieme, con
library(tidyverse)
Da dove iniziare: concetti di base
In questa sezione: