pyspark.sql.functions.percentile_approx¶
-
pyspark.sql.functions。
percentile_approx
( 上校:ColumnOrName,百分比:聯盟(pyspark.sql.column.Column,浮動,列表(浮動],元組(浮動]],精度:聯盟(pyspark.sql.column.Column,浮動]=10000年 )→pyspark.sql.column.Column¶ -
返回近似百分位數字的列上校這是命令的最小值上校值(排序從最小到最大),這樣不超過百分比的上校的值小於或等於這個值。百分比的值必須在0.0和1.0之間。
精度參數(默認:10000)是一個積極的數字文字控製近似精度為代價的記憶。更高精度的價值更好的準確性,1.0 /精度的相對誤差近似。
當比例是一個數組,每個值的百分比數組必須在0.0和1.0之間。在這種情況下,返回近似百分位數組的列坳在給定百分比數組。
例子
> > >關鍵=(上校(“id”)%3)。別名(“關鍵”)> > >價值=(randn(42)+關鍵*10)。別名(“價值”)> > >df=火花。範圍(0,1000年,1,1)。選擇(關鍵,價值)> > >df。選擇(…percentile_approx(“價值”,(0.25,0.5,0.75),1000000)。別名(“分位數”)…)。printSchema()根|——分位數:陣列(nullable = true)| |——元素:雙(containsNull = false)
> > >df。groupBy(“關鍵”)。gg(…percentile_approx(“價值”,0.5,點燃(1000000))。別名(“中值”)…)。printSchema()根| - - -關鍵:長(可空= true)|——中值:雙(nullable = true)