2017-02-28 82 views
1

请帮助我,我需要基于5分钟的时间间隔聚合一个数据集并基于平均函数进行聚合,在这里您可以找到输入和期望的输出。将被高度赞赏,第一列是一个时间戳列,我正在使用Scala语言enter image description here给定时间间隔内的聚合函数spark

回答

2

通常,您可以从每次提取5分钟桶(例如通过获取时间戳作为数字,除以5分钟并铺设结果)。

然后你只需做:

df.groupBy("bucket").avg($"value") 
+0

请你更新你的代码给如何完成它,我只是新的到,所以我可以接受你的答案谢谢你很多 – user7394882

+0

试着做以下几点: df.withColumn(“bucket”,((unix_timestamp($“time”)/ 300).cast(“long”)* 300).cast(“timestamp”)) –

+0

Thanks for many friend,the last last question for函数平均,我想申请avg在数据集中存在的所有列,列时间除外,它看起来如何? – user7394882

相关问题