Annual, monthly or daily mean for irregular time series
r, time-series
Solution
Convert your data to an xts object, then use `apply.daily` et al to calculate whatever values you want.
library(xts)
d <- structure(list(dates = c("12/03/2012 11:26", "12/03/2012 11:56",
"12/03/2012 12:26"), temperature = c(9.7533, 9.6673, 9.6673),
depth = c(0.48073, 0.33281, 0.33281), salinity = c(37.607,
37.662, 37.672)), .Names = c("dates", "temperature", "depth",
"salinity"), row.names = c(NA, -3L), class = "data.frame")
x <- xts(d[,-1], as.POSIXct(d[,1], format="%m/%d/%Y %H:%M"))
apply.daily(x, colMeans)
# temperature depth salinity
# 2012-12-03 12:26:00 9.695967 0.3821167 37.647
Problem
I am a new user of "R", and I couldn't find a good solution to solve it. I got a timeseries in the following format: ``` >dates temperature depth salinity >12/03/2012 11:26 9.7533 0.48073 37.607 >12/03/2012 11:56 9.6673 0.33281 37.662 >12/03/2012 12:26 9.6673 0.33281 37.672 ``` I have an irregular frequency for variable measurements, done every 15 or every 30 minutes depending on the period. I would like to calculate annual, monthly and daily averages for each of my variables, whatever the number of data in a day/month/year is. I read a lot of things about the packages zoo, timeseries, xts, etc. but I can't get a clear vision of what I nead (maybe cause I'm not skilled enough with R...). I hope my post is clear, don't hesitate to tell me if it's not.