[R] Calculate daily means from 5-minute interval data
Rich Shepard
r@hep@rd @end|ng |rom @pp|-eco@y@@com
Thu Sep 2 20:42:41 CEST 2021
On Thu, 2 Sep 2021, Rich Shepard wrote:
> If I correctly understand the output of as.POSIXlt each date and time
> element is separate, so input such as 2016-03-03 12:00 would now be 2016 03
> 03 12 00 (I've not read how the elements are separated). (The TZ is not
> important because all data are either PST or PDT.)
Using this script:
discharge <- read.csv('../data/water/discharge.dat', header = TRUE, sep = ',', stringsAsFactors = FALSE)
discharge$sampdate <- as.POSIXlt(discharge$sampdate, tz = "",
format = '%Y-%m-%d %H:%M',
optional = 'logical')
discharge$cfs <- as.numeric(discharge$cfs, length = 6)
I get this result:
> head(discharge)
sampdate cfs
1 2016-03-03 12:00:00 149000
2 2016-03-03 12:10:00 150000
3 2016-03-03 12:20:00 151000
4 2016-03-03 12:30:00 156000
5 2016-03-03 12:40:00 154000
6 2016-03-03 12:50:00 150000
I'm completely open to suggestions on using this output to calculate monthly
means and sds.
If dplyr:summarize() will do so please show me how to modify this command:
disc_monthly <- ( discharge
%>% group_by(sampdate)
%>% summarize(exp_value = mean(cfs, na.rm = TRUE))
because it produces daily means, not monthly means.
TIA,
Rich
More information about the R-help
mailing list