approxQuantile (DataFrame)

Calcule les quantiles approximatifs des colonnes numériques d’un DataFrame.

Syntaxe

approxQuantile(col: Union[str, List[str], Tuple[str]], probabilities: Union[List[float], Tuple[float]], relativeError: float)

Paramètres

Paramètre Type Description
col str, tuple ou list Il peut s’agir d’un nom de colonne unique ou d’une liste de noms pour plusieurs colonnes.
probabilities liste ou tuple de flotteurs une liste de probabilités quantiles. Chaque nombre doit être un float dans la plage [0, 1]. Par exemple, 0,0 est le minimum, 0,5 est la médiane, 1,0 est la valeur maximale.
relativeError flotter Précision cible relative à atteindre (>= 0). Si la valeur est égale à zéro, les quantiles exacts sont calculés, ce qui peut être très coûteux. Notez que les valeurs supérieures à 1 sont acceptées, mais donnent le même résultat que 1.

Retours

liste : quantiles approximatifs aux probabilités données. Si l’entrée col est une chaîne, la sortie est une liste de floats. Si l’entrée col est une liste ou un tuple de chaînes, la sortie est également une liste, mais chaque élément dans celui-ci est une liste de floats.

Remarques

Les valeurs Null sont ignorées dans les colonnes numériques avant le calcul. Pour les colonnes contenant uniquement des valeurs Null, une liste vide est retournée.

Exemples

data = [(1,), (2,), (3,), (4,), (5,)]
df = spark.createDataFrame(data, ["values"])
quantiles = df.approxQuantile("values", [0.0, 0.5, 1.0], 0.05)
quantiles
# [1.0, 3.0, 5.0]

data = [(1, 10), (2, 20), (3, 30), (4, 40), (5, 50)]
df = spark.createDataFrame(data, ["col1", "col2"])
quantiles = df.approxQuantile(["col1", "col2"], [0.0, 0.5, 1.0], 0.05)
quantiles
# [[1.0, 3.0, 5.0], [10.0, 30.0, 50.0]]