2016-08-14 52 views
0

例如:一张表,其中每隔几分钟就会节省一次功耗。导轨,组平均值,然后再次组合总和

我试图使用groupdate宝石与此数据做:

@kWh = Consumption.group_by_hour(:at).average(:kw) 
@kWh_per_day = @kWh.group_by_day(:at).sum(:average_kw) 

对于第二个行我得到一个错误:

任何推在正确的方向“没有给定块”会不胜感激。

回答

0

...什么终于摸索,虽然它看起来不是很elegeant:

@kWh = Consumption.group_by_hour(:at).average(:kw) 
@kWh_per_day = Hash [@kWh.group_by_day { |h| h[0] }.map { |k,v| [k, v.map { |j| j[1] }.reduce(:+)] } ]