Python 如何在pyspark中找到列的中间值?

Python 如何在pyspark中找到列的中间值?,python,numpy,pyspark,median,Python,Numpy,Pyspark,Median,我有一个spark数据框 df = a b c d 0 12 12.0 car bike 1 20 20.5 car alto 2 15 12.0 bike car 3 25 25 bike jeep 我想找到列“a”的中间值。我找不到合适的方法来找到中间值,所以使用普通的python NumPy函数来找到中间值,但我得到的错误如下:- import numpy as np median = df['a'].median

我有一个spark数据框

df = 
   a     b     c     d
0  12  12.0   car  bike
1  20  20.5   car  alto
2  15  12.0  bike   car
3  25    25  bike  jeep
我想找到列“a”的中间值。我找不到合适的方法来找到中间值,所以使用普通的python NumPy函数来找到中间值,但我得到的错误如下:-

import numpy as np
median = df['a'].median()
错误:-

TypeError: 'Column' object is not callable
预期产出:-

17.5

您可以像这样使用Prentile_近似值

df.agg(F.expr("percentile_approx('a', 0.5)")).show()