Come utilizzare la funzione gather in r (con esempi)
La funzione raccogli() del pacchetto Tidyr può essere utilizzata per “raccogliere” una coppia chiave-valore su più colonne.
Questa funzione utilizza la seguente sintassi di base:
raccogliere (dati, valore chiave, ecc.)
Oro:
- data : nome del frame di dati
- key : nome della colonna chiave da creare
- valore : nome della colonna di valori da creare
- … : specificare le colonne da cui effettuare la raccolta
I seguenti esempi mostrano come utilizzare questa funzione nella pratica.
Esempio 1: raccogli i valori di due colonne
Supponiamo di avere il seguente frame di dati in R:
#create data frame df <- data. frame (player=c('A', 'B', 'C', 'D'), year1=c(12, 15, 19, 19), year2=c(22, 29, 18, 12)) #view data frame df player year1 year2 1 to 12 22 2 B 15 29 3 C 19 18 4 D 19 12
Possiamo usare la funzione raccogli() per creare due nuove colonne chiamate “anno” e “punti” come segue:
library (tidyr) #gather data from columns 2 and 3 gather(df, key=" year ", value=" points ", 2:3) player year points 1 A year1 12 2 B year1 15 3 C year1 19 4 D year1 19 5 A year2 22 6 B year2 29 7 C year2 18 8 D year2 12
Esempio 2: raccogli valori da più di due colonne
Supponiamo di avere il seguente frame di dati in R:
#create data frame df2 <- data. frame (player=c('A', 'B', 'C', 'D'), year1=c(12, 15, 19, 19), year2=c(22, 29, 18, 12), year3=c(17, 17, 22, 25)) #view data frame df2 player year1 year2 year3 1 A 12 22 17 2 B 15 29 17 3 C 19 18 22 4 D 19 12 25
Possiamo utilizzare la funzione raccogli() per “raccogliere” i valori delle colonne 2, 3 e 4 in due nuove colonne chiamate “anno” e “punti” come segue:
library (tidyr) #gather data from columns 2, 3, and 4 gather(df, key=" year ", value=" points ", 2:4) player year points 1 A year1 12 2 B year1 15 3 C year1 19 4 D year1 19 5 A year2 22 6 B year2 29 7 C year2 18 8 D year2 12 9 A year3 17 10 B year3 17 11 C year3 22 12 D year3 25
Risorse addizionali
L’obiettivo del pacchetto Tidyr è quello di creare dati “ordinati”, che abbiano le seguenti caratteristiche:
- Ogni colonna è una variabile.
- Ogni riga è un’osservazione.
- Ogni cella ha un valore univoco.
Il pacchetto Tidyr utilizza quattro funzioni principali per creare dati ordinati:
1. La funzione spread() .
2. La funzione raccogli() .
3. La funzione separate() .
4. La funzione unit() .
Se padroneggi queste quattro funzioni, sarai in grado di creare dati “ordinati” da qualsiasi frame di dati.