pyspark.sql.DataFrameStatFunctions.approxQuantile

DataFrameStatFunctions。 approxQuantile ( 上校:聯盟(str,列表(str],元組(str]],概率:聯盟(列表(浮動],元組(浮動]],relativeError:浮動 )→聯盟(列表(浮動] ,列表(列表(浮動] ] ]

計算的近似數值列的分位數DataFrame

該算法的結果有以下確定性約束:如果DataFrame有N個元素如果我們請求在概率分位數嗎p到錯誤犯錯,那麼該算法將返回一個樣本xDataFrame這樣確切的的秩x接近(p * N)。更準確地說,

地板((p -犯錯)* N) < =排名(x) < =裝天花板((p +犯錯)* N)。

這種方法實現的一個變體Greenwald-Khanna算法(一些速度優化)。該算法首先出現在[[https://doi.org/10.1145/375663.375670空間效率在線計算的分位數摘要]]格林沃爾德和卡納。

注意,null值將被忽略在數值列計算。僅供列包含空值,則返回一個空列表。

參數
上校:str,元組或列表

可以單個列的名字,或者多個列的名單。

添加支持多個列。

概率 列表或元組

分位數概率每個數字的列表必須屬於[0,1]。例如0是最低,0.5是中值,1是最大的。

relativeError 浮動

相對精度達到目標(> = 0)。如果設置為0,準確的分位數計算,這可能是非常昂貴的。請注意接受值大於1,但給相同的結果為1。

返回
列表

給出的近似分位數的概率。如果輸入上校是一個字符串,輸出是漂浮的列表。如果輸入上校是一個列表或元組的字符串,輸出也是一個列表,但每個元素是一個漂浮的列表,即。的輸出是一個列表的列表。