如何以Spark方式计算`values [i]-values [i-1]`?

时间:2018-10-05 01:16:32

标签: apache-spark apache-spark-sql

我有一个名为values的数据集,其中有一个名为value的列,已加载并转换为双精度型。我想添加一个新列diff,其中diff[i] = value[i] - value[i-1]。所以我这样做:

val diffs = values.withColumn("diff", values.col("value").minus(lag("value", 1, 0)))

但是我得到这个错误:

  

java.lang.UnsupportedOperationException:无法评估表达式:lag(input [0,double,true],1,0.0)

我在做什么错了?

[编辑]只是为了澄清,上面发布的代码在Kotlin中而不是Scala中。无论如何,这个问题与语言无关,比与Spark无关。

0 个答案:

没有答案