Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 将线性拟合估计为移动平均_Apache Spark_Apache Spark Sql_Window Functions - Fatal编程技术网

Apache spark 将线性拟合估计为移动平均

Apache spark 将线性拟合估计为移动平均,apache-spark,apache-spark-sql,window-functions,Apache Spark,Apache Spark Sql,Window Functions,假设我有以下数据: Year Day Amount 2015 1 2 2015 2 3 2015 3 4 2015 4 5 使用窗口函数或聚合,我想为每一行获取一个数字,表示“基于前n行的线性”。在这个简单的示例中,对于day=4的行,基于明显的原因,基于前面的n天,线性度将非常高,其中n是3 当前几天不存在时会出现问题,在这种情况下,我只想使用默认值-1,例如,表示其他情况 我没有一个精确的值,我想表示线性,但是作为一个例子,类似于相关系数,1可以表示高线

假设我有以下数据:

Year  Day  Amount
2015  1    2
2015  2    3
2015  3    4
2015  4    5
使用窗口函数或聚合,我想为每一行获取一个数字,表示“基于前n行的线性”。在这个简单的示例中,对于
day=4
的行,基于明显的原因,基于前面的n天,线性度将非常高,其中n是3

当前几天不存在时会出现问题,在这种情况下,我只想使用默认值-1,例如,表示其他情况

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

编辑:

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

  • 生成包含所有要估计日期的序列
  • 左外侧将其与输入连接起来
  • Amount
    null
    值替换为要估计的值
  • 转换为RDD
  • 使用下限->为
    2015 4
    生成密钥[
    2015 4
    2015 3
    2015 2
    ]amd展平
  • groupByKey
  • 对组的估计
      • 生成包含所有要估计日期的序列
      • 左外侧将其与输入连接起来
      • Amount
        null
        值替换为要估计的值
      • 转换为RDD
      • 使用下限->为
        2015 4
        生成密钥[
        2015 4
        2015 3
        2015 2
        ]amd展平
      • groupByKey
      • 对组的估计

      所以我们知道您想要什么。现在,你试图达到什么目的?@zero323我已经用我的尝试更新了我的问题。所以我们知道你想要什么。现在,你试图达到什么目的?@zero323我已经用我的尝试更新了我的问题。你能详细介绍一下“生成具有下限的密钥”吗?不确定你的确切意思。你能详细介绍一下“生成具有下限的键”吗?我不知道你到底是什么意思。