Trasformare i data.table

Unire i dati con data.table in R

Scott Ritchie

Postdoctoral Researcher in Systems Genomics

Trasformare un data.table long

sales_wide <- dcast(sales_long, quarter ~ year, value.var = "amount")

Unire i dati con data.table in R

La funzione dcast()

La forma generale di dcast():

dcast(DT, ids ~ group, value.var = "values")
      |   |     |                   |
      |   |     |                    --> colonna da dividere
      |   |      ----------------------> etichette di gruppo per dividere
      |    ----------------------------> righe da tenere come identificatori
       --------------------------------> data.table da rimodellare            
Unire i dati con data.table in R

La funzione dcast()

sales_wide <- dcast(sales_long, quarter ~ year, value.var = "amount")

Unire i dati con data.table in R

Dividere più colonne di valori

dcast(profit_long, quarter ~ year, value.var = c("revenue", "profit"))

Unire i dati con data.table in R

Più identificatori di riga

Mantieni più colonne come identificatori di riga:

dcast(sales_long, quarter + season ~ year, value.var = "amount")

Unire i dati con data.table in R

Eliminare colonne

Solo le colonne nella formula o in value.var saranno nel risultato:

sales_wide <- dcast(sales_long, quarter ~ year, value.var = "amount")

Unire i dati con data.table in R

Raggruppamenti multipli

Dividi su più colonne di gruppo:

dcast(sales_long, quarter ~ department + year, value.var = "amount")

Unire i dati con data.table in R

Conversione in matrice

sales_wide <- dcast(sales_long, season ~ year, value.var = "amount")
sales_wide
   season    2015    2016
1: Autumn 3420000 3670000
2: Spring 2950000 3000300
3: Summer 2980700 3120200
4: Winter 3200100 3350000
Unire i dati con data.table in R

Conversione in matrice

as.matrix() può usare una colonna come nomi di riga della matrice:

mat <- as.matrix(sales_wide, rownames = "season")
mat
       2015    2016        
Autumn 3420000 3670000
Spring 2950000 3000300
Summer 2980700 3120200
Winter 3200100 3350000
Unire i dati con data.table in R

Ayo berlatih!

Unire i dati con data.table in R

Preparing Video For Download...