0
如何遍历在星火2.0和Scala一个DataSet?我的问题是 - 我需要比较两行。我需要比较DateN和DateN-1并计算差异。迭代器与数据集星火2.0
Row1 - Date1 Num1
Row2 - Date2 Num2
..
RowN- DateN NumN
如何遍历在星火2.0和Scala一个DataSet?我的问题是 - 我需要比较两行。我需要比较DateN和DateN-1并计算差异。迭代器与数据集星火2.0
Row1 - Date1 Num1
Row2 - Date2 Num2
..
RowN- DateN NumN
不知道,不管你使用的窗函数解决问题,因为你只是想比较ñ& N-1行,我不看属性上要对数据进行分组。根据您所述的要求,您可以按如下方式解决问题:
运用你的逻辑以下是工作示例:
val spark = SparkSession
.builder
.appName("Example")
.master("local[*]")
.getOrCreate()
import spark.implicits._
val customers = spark.sparkContext.parallelize(List(("Alice", "2016-05-01", 50.00),
("Alice", "2016-05-03", 45.00),
("Alice", "2016-05-04", 55.00),
("Bob", "2016-05-01", 25.00),
("Bob", "2016-05-04", 29.00),
("Bob", "2016-05-06", 27.00)))
val custIndexed = customers.zipWithIndex().collect()
val custOdd = custIndexed.filter(record=>record._2%2!=0)
val custEven = custIndexed.filter(record=>record._2%2==0)
我能够解决它使用窗口函数。谢谢 ! –
贵DF只包含两行?如果不是你想要给出数据的答案是什么?请详细说明问题,因为有可用的方法 –
不,这只是一个例子。我的DS有很多行。正如我上面提到我需要在一个迭代中从阶两排两个日期比较,发现它们的区别。 –
你想要“窗口功能”。例如,请参阅https://databricks.com/blog/2015/07/15/introducing-window-functions-in-spark-sql.html –