나는 이와 비슷한 수치가있는 dataframe이 : 나는 각각의 연속적인 항목에 대한 확률의 평균을 찾을 필요가스파크에서 연속 항목의 의미 찾는 방법
probability
0
0.2
0.3
0.4
0.5
DF 및 다음
expectedMeanDF
mean
0
0.1
0.25
0.35
0.45
1
0.1 원하는 I 그래서 0.2과 0.3 0 0.2, 0.25의 평균 ... 나는이 작업을 수행하기 위해 다음과 같은 방법으로 윈도우 기능을 사용하고
는 S :
df.withColumn("partition", dp.col("probability")*0)
val window = Window.partitionBy("partition")
val mean = distinctProbability.withColumn("mean", (newdp.col("probability") + lead("probability", 1).over(window))/2).drop("partition").drop("probability")
그래서이 문제를 가지고 이 방법 : 그것은 dataframe의 처음과 마지막 위치에 0과 1을 추가 할 수 없습니다입니다
- 은 각각
- 그것은 매우 효율적이 아니다. 내 DF의 행 수가 3 천 개까지 올라갈 수 있으므로 문제가됩니다.
대체 방법은 무엇입니까?