apachespark-将线性拟合估计为移动平均值



假设我有以下数据:

Year  Day  Amount
2015  1    2
2015  2    3
2015  3    4
2015  4    5

使用窗口函数或聚合,我想为每一行获得一个数字,表示"基于前n行的线性"。在这个简单的例子中,对于具有day = 4的行,由于明显的原因,基于之前的n天,其中n是3,线性度将相当高。

当以前的一些日子不存在时,问题就会弹出,在这种情况下,我只想使用默认值-1,例如,以表示其他情况。

我没有一个确切的值来表示线性,但作为一个例子,类似于相关系数,1可以表示高线性,而0没有。

编辑:

作为一个临时用例,我所做的是在每行中添加一列,表示日期(并考虑年份),并使用一个窗口函数,带滞后来查找之前的4个值(如果存在的话)。在得到(或没有得到这些值)后,我做了一个简单的计算来计算每个点组合的差异,并使用除法来查看它们之间的距离(1将是最好的)。很抱歉,由于代码共享协议,我无法共享任何代码。

  • 生成包含要估计的所有日期的序列
  • 左外部将其与输入连接
  • Amountnull值替换为要估计的值
  • 转换为RDD
  • 2015 4生成具有下界的密钥->生成密钥[2015 42015 32015 2]并压平
  • groupByKey
  • 组的估计

相关内容

  • 没有找到相关文章

最新更新