如何使用 Spark Scala 计算 Bin 平均值?

Posted

技术标签:

【中文标题】如何使用 Spark Scala 计算 Bin 平均值?【英文标题】:How to Calculate Bin Averages using Spark Scala? 【发布时间】:2016-12-22 07:09:04 【问题描述】:

我有一个大约 12000 行的大型数据集。数据由位移值和时间戳组成。对于每 10 行,我想计算平均值、标准偏差等。

我可以为此使用窗口功能吗?或者有人可以提出更简单的方法吗?

P.S:我是 Spark 和 scala 的新手。提前致谢。

【问题讨论】:

你自己想出了什么?你如何计算垃圾箱?您可以执行reduceByKey 操作,其中键是相应的 bin。 Binsize 没有预先定义。它是来自用户的输入参数。我不认为 reduceByKey 可以解决这个问题。 【参考方案1】:

是的,可以使用 rolling windowslagleadrowsBetween 等大量选项,具体取决于您的用例,这里有一些链接:windows explained more windows info

【讨论】:

你知道增加窗口函数步长/滑动大小的方法吗?默认情况下,它设置为 1。 据我所知,Window 函数会计算每一行的结果,有重叠。我想要每个 bin 一个结果。即平均10行。然后平均接下来的 10 行。 [1-10 - bin1,11-20 -bin2 ] 以此类推。 请粘贴您的代码 - 数据框和所需的输出

以上是关于如何使用 Spark Scala 计算 Bin 平均值?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Scala Spark 中使用具有许多条件的“.withColumn”为数据集创建新列

如何使用Scala计算Spark中数据框中列的开始索引和结束索引之间的行的平均值?

在linux上如何配置spark环境,在linux上安装scala和spark老是失败

如何成为云计算大数据Spark高手

Scala Spark:计算分组的 AUC

如何在Ubuntu下搭建Spark集群