Ho una data.frame (link to file) con 18 colonne e 11520 righe che trasformo simili:come accelerare questo codice R
library(plyr)
df.median<-ddply(data, .(groupname,starttime,fPhase,fCycle),
numcolwise(median), na.rm=TRUE)
secondo system.time(), ci vogliono circa questo lungo per eseguire:
user system elapsed
5.16 0.00 5.17
Questa chiamata è parte di una webapp, in modo da eseguire il tempo è abbastanza importante. C'è un modo per velocizzare questa chiamata?
È possibile memorizzare nella cache i risultati? – Shane
'ddply()' è prima di tutto * conveniente *. Se hai bisogno di qualcosa di veloce, potrebbe essere necessario reimplementare la logica. –
@Shane: ci sono attualmente 3 * 400 set di dati possibili (e in aumento ogni giorno) che un utente potrebbe richiedere. È improbabile che un utente prenda lo stesso set di dati di un altro. Quindi il caching sarebbe utile solo all'interno di una sessione. Poiché l'output della webapp è essenzialmente un report in scatola, non penso che l'utente lo richiederebbe più di una volta. Implementeresti il caching per la situazione che ho descritto? Non l'ho mai fatto prima, quindi sono un po 'in perdita. – dnagirl