Come trasporre un frame di dati utilizzando dplyr


È possibile utilizzare la seguente sintassi di base per trasporre un frame di dati utilizzando il pacchetto dplyr in R:

 library (dplyr)
library (tidyr)

df %>%
    pivot_wider(names_from = column1, values_from = column2)

L’argomento Names_from specifica i valori da utilizzare per i nomi delle colonne nel frame di dati trasposto e l’argomento Values_from specifica i valori della cella da utilizzare nel frame di dati trasposto.

Tieni presente che l’operatore pipe ( %>% ) proviene dal pacchetto dplyr mentre la funzione pivot_wider() proviene dal pacchetto Tidyr .

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: trasporre un dataframe utilizzando dplyr

Supponiamo di avere il seguente frame di dati in R che contiene informazioni su varie squadre di basket:

 #create data frame
df <- data. frame (team=c('Mavs', 'Nets', 'Kings', 'Lakers'),
                 dots=c(99, 104, 119, 113))

#view data frame
df

    team points
1 Mavs 99
2 Nets 104
3 Kings 119
4 Lakers 113

Supponiamo ora di voler trasporre il frame di dati in modo che i nomi delle squadre vengano utilizzati come nomi di colonna e i valori dei punti vengano utilizzati come valori di cella all’interno del frame di dati.

Possiamo usare la seguente sintassi per fare questo:

 library (dplyr)
library (tidyr)

#transpose data frame
df %>%
    pivot_wider(names_from = team, values_from = points)

# A tibble: 1 x 4
   Mavs Nets Kings Lakers
      
1 99 104 119 113

Il frame di dati è stato trasposto in modo che i nomi delle squadre vengano utilizzati come colonne e i valori dei punti come valori di cella nel frame di dati.

Tieni presente che il frame di dati risultante ora contiene 1 riga e 4 colonne.

Correlati: un’introduzione alla funzione pivot_wider() in R

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni utilizzando dplyr:

Come filtrare le righe contenenti una determinata stringa utilizzando dplyr
Come calcolare le frequenze relative utilizzando dplyr
Come selezionare la prima riga per gruppo utilizzando dplyr

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *