У меня есть фрейм данных:
val DF = {spark.read.option("header", value = true).option("delimiter", ";").csv(path_file)}
val cord = DF.select("time","longitude", "latitude","speed")
Я хочу рассчитать показатель z (среднее значение x) / стандартное отклонение для каждой строки столбца скорости. Я рассчитываю среднее и стандартное отклонение:
val std = DF.select(col("speed").cast("double")).as[Double].rdd.stdev()
val mean = DF.select(col("speed").cast("double")).as[Double].rdd.mean()
Как рассчитать z-оценку для каждой строки скорости столбца и получить такой результат:
+----------------+----------------+-
|A |B |speed | z score
+----------------+----------------+---------------------+
|17/02/2020 00:06| -7.1732833| 50 | z score
|17/02/2020 00:16| -7.1732833| 40 | z score
|17/02/2020 00:26| -7.1732833| 30 | z score
Как рассчитать его для каждой строки.