【问题标题】:Aggregate hourly means based on compound field expression基于复合字段表达式聚合每小时均值
【发布时间】:2014-07-04 11:41:54
【问题描述】:

我正在尝试在与此类似的数据框中计算 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 函数尝试了不同的东西,但没有运气。所以我想要的是计算x 的平均值,如果hourdaymonthyear 的值相同。输出应如下所示:

  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

【问题讨论】:

  • aggregate(x ~ hour + day + month + year , data=dat, mean, na.rm=T) 应该可以工作。
  • 谢谢,这就像一个魅力!非常感谢。

标签: r group-by aggregate compound-key


【解决方案1】:

试试这个。。

require(dplyr)

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多