Sto cercando di utilizzare data.table
in R per riassumere la seguente tabella di dati:Riassumere in base a due variabili di raggruppamento in R utilizzando data.table
SiteNo Var1 Var2 Var3 ... Var18 Group
1 0.1 0.3 1 0.3 1
2 0.3 0.1 0.9 0.2 1
etc.
ci sono 668,944 osservazioni, 43 siti, 3 gruppi, e 19 variabili. Mi piacerebbe ottenere i risultati di una funzione (ad esempio, mean
) che riepiloga ogni colonna/variabile in base al sito e al gruppo. Pertanto, dovrebbero esserci 43 siti x 3 gruppi x # di statistiche riassuntive (ad es., mean
). Ho usato il seguente codice:
e.dt<-data.table(e)
setkey(e.dt, Group) # set key to group number
# get mean for each column/variable
e.dt.mean<-e.dt[,lapply(.SD,mean), by="SiteNo"]
Utilizzando quanto sopra, ottengo 43 siti, ma non i 3 gruppi che cercavo. Potrei dividere la tabella dei dati originale in tre gruppi, ma mi chiedevo se esistesse un modo per riepilogare usando due variabili (SiteNo e Group) usando data.table
.
Sono ancora RTM su data.table
, ma finora non ho trovato la risposta a quanto sopra.