Я хочу вычислить агрегаты транзакций в Scala Spark.Так, например, среднее значение всех транзакций за последние 24 часа с одной и той же картой.В настоящее время я делаю это так:
def dayToSec(i:Integer) = i * 86400
val wspec = Window.partitionBy("cardid").orderBy(col("timestamp").cast("long")).rangeBetween(-dayToSec(1), 0)
var df= df.withColumn("avginternalamountpast24h",avg("internalamount").over(wspec))
Есть ли более эффективный способ?