每小时聚合意味着基于复合字段表达

时间:2014-07-04 11:41:55

标签: r group-by aggregate compound-key

我正在尝试计算与此类似的数据框中x的每小时平均值:

  min hour day month year    x
1  10   22  31    12 2013 18.3
2  30   22  31    12 2013 16.5
3  50   22  31    12 2013 15.7
4  10   23  31    12 2013 16.7
5  30   23  31    12 2013 18.0
6  50   23  31    12 2013 18.1
7  10    0   1     1 2014 17.4
8  30    0   1     1 2014 15.4
9  50    0   1     1 2014 16.9

我尝试使用aggregate功能做了不同的事情,但没有运气。所以,如果xhourdaymonth的值相同,我想要计算year的平均值。输出应如下所示:

  hour day month year        x
1   22  31    12 2013 16.83333
2   23  31    12 2013 17.60000
3    0   1     1 2014 16.56667

1 个答案:

答案 0 :(得分:2)

试一试..

require(dplyr)

mydf %>%
   group_by(year, month, day, hour) %>%
   summarise (average = mean(x))