Beware of missing or extra records with these approaches. Also may be tricky to get the time aligned to the hour properly.
On December 6, 2020 9:12:01 PM PST, Richard O'Keefe <rao...@gmail.com> wrote: >To be honest, I would do this one of two ways. > >(1) Use ?decimate from library(signal), > decimating by a factor of three. > >(2) Convert the variable to an (n/3)*3 matrix using > as.matrix then use rowMeans or apply. > >On Thu, 3 Dec 2020 at 06:55, Stefano Sofia ><stefano.so...@regione.marche.it> >wrote: > >> Dear list users, >> I have wind data with frequency of 10 minutes (three years data). For >> simplicity let me use only max wind speed. >> I need to reduce the frequency to 30 minutes, at 00 (taking the >mean of >> data at 40, 50 and 00 minutes) and at 30 (taking the mean of data at >10, 20 >> and 30 minutes) of each hour. >> >> The simple code here reported works well, but the column "interval" >groups >> data forward, not backward: >> >> init_day <- as.POSIXct("2018-02-01-00-00", format="%Y-%m-%d-%H-%M", >> tz="Etc/GMT-1") >> fin_day <- as.POSIXct("2018-02-01-02-00", format="%Y-%m-%d-%H-%M", >> tz="Etc/GMT-1") >> mydf <- data.frame(data_POSIX=seq(init_day, fin_day, by="10 mins")) >> mydf$vmax <- round(rnorm(13, 35, 10)) >> mydf$interval <- cut(mydf$data_POSIX, , breaks="30 min") >> means <- aggregate(vmax ~ interval, mydf, mean) >> >> data_POSIX vmax interval >> 1 2018-02-01 00:00:00 27 2018-02-01 00:00:00 >> 2 2018-02-01 00:10:00 41 2018-02-01 00:00:00 >> 3 2018-02-01 00:20:00 46 2018-02-01 00:00:00 >> 4 2018-02-01 00:30:00 39 2018-02-01 00:30:00 >> 5 2018-02-01 00:40:00 34 2018-02-01 00:30:00 >> 6 2018-02-01 00:50:00 32 2018-02-01 00:30:00 >> ... >> >> I should work with >> >> data_POSIX vmax interval >> 1 2018-02-01 00:00:00 27 2018-02-01 00:00:00 >> 2 2018-02-01 00:10:00 41 2018-02-01 00:30:00 >> 3 2018-02-01 00:20:00 46 2018-02-01 00:30:00 >> 4 2018-02-01 00:30:00 39 2018-02-01 00:30:00 >> 5 2018-02-01 00:40:00 34 2018-02-01 00:00:00 >> 6 2018-02-01 00:50:00 32 2018-02-01 00:00:00 >> ... >> >> >> Is there a way to modify this code to groupp data correctly? (I would >> prefer using only the base package) >> >> Thank you for your help >> Stefano >> >> >> >> (oo) >> --oOO--( )--OOo---------------- >> Stefano Sofia PhD >> Civil Protection - Marche Region >> Meteo Section >> Snow Section >> Via del Colle Ameno 5 >> 60126 Torrette di Ancona, Ancona >> Uff: 071 806 7743 >> E-mail: stefano.so...@regione.marche.it >> ---Oo---------oO---------------- >> >> ________________________________ >> >> AVVISO IMPORTANTE: Questo messaggio di posta elettronica può >contenere >> informazioni confidenziali, pertanto è destinato solo a persone >autorizzate >> alla ricezione. I messaggi di posta elettronica per i client di >Regione >> Marche possono contenere informazioni confidenziali e con privilegi >legali. >> Se non si è il destinatario specificato, non leggere, copiare, >inoltrare o >> archiviare questo messaggio. Se si è ricevuto questo messaggio per >errore, >> inoltrarlo al mittente ed eliminarlo completamente dal sistema del >proprio >> computer. Ai sensi dell’art. 6 della DGR n. 1394/2008 si segnala che, >in >> caso di necessità ed urgenza, la risposta al presente messaggio di >posta >> elettronica può essere visionata da persone estranee al destinatario. >> IMPORTANT NOTICE: This e-mail message is intended to be received only >by >> persons entitled to receive the confidential information it may >contain. >> E-mail messages to clients of Regione Marche may contain information >that >> is confidential and legally privileged. Please do not read, copy, >forward, >> or store this message unless you are an intended recipient of it. If >you >> have received this message in error, please forward it to the sender >and >> delete it completely from your computer system. >> >> -- >> Questo messaggio stato analizzato da Libra ESVA ed risultato non >infetto. >> This message was scanned by Libra ESVA and is believed to be clean. >> >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide >> http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> > > [[alternative HTML version deleted]] > >______________________________________________ >R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >https://stat.ethz.ch/mailman/listinfo/r-help >PLEASE do read the posting guide >http://www.R-project.org/posting-guide.html >and provide commented, minimal, self-contained, reproducible code. -- Sent from my phone. Please excuse my brevity. ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.