以R计算每分钟一天的平均值



在过去的80天里,我每分钟收集一次数据,相当于大约116k条记录:

...
"30694","2015-09-06 18:09:11","119"
"30695","2015-09-06 18:10:09","693"
"30696","2015-09-06 18:11:10","155"
...

我希望能够绘制出这个数据的整个星期的平均值。我应该如何在R中执行此操作?我想把数据分成每天(周日、周一、…、周六),然后取每分钟的平均值(所以忽略秒),等于一周的60*24*7=10080个总平均值,每个平均值由某一分钟(即18:11)的80天数据计算得出。有更简单/更好的方法吗?也将开放使用另一个数据分析包。

使用lubridate可以轻松完成此操作。

library(dplyr)
library(lubridate)
data %>%
  setNames(c("ID", "time", "measurement") ) %>%
  mutate(time = time %>% ymd_hms,
         week = time %>% round_date("week") ) %>%
  group_by(week) %>%
  summarize(measurement = mean(measurement))

最新更新