max
Renvoie la valeur maximale de l'expression dans un groupe. Les valeurs nulles sont ignorées pendant le calcul. Les valeurs NaN sont supérieures à toute autre valeur numérique.
Syntaxe
from pyspark.sql import functions as sf
sf.max(col)
parameter
parameter | Type | Description |
|---|---|---|
|
| La colonne cible sur laquelle la valeur maximale est calculée. |
Renvoie
pyspark.sql.Column: colonne qui contient la valeur maximale calculée.
Exemples
**Exemple 1 **: Calculez la valeur maximale d'une colonne numérique
import pyspark.sql.functions as sf
df = spark.range(10)
df.select(sf.max(df.id)).show()
+-------+
|max(id)|
+-------+
| 9|
+-------+
Exemple 2 : Calculez la valeur maximale d'une colonne de chaîne.
import pyspark.sql.functions as sf
df = spark.createDataFrame([("A",), ("B",), ("C",)], ["value"])
df.select(sf.max(df.value)).show()
+----------+
|max(value)|
+----------+
| C|
+----------+
Exemple 3 : calculez la valeur maximale d'une colonne dans un DataFrame groupé
import pyspark.sql.functions as sf
df = spark.createDataFrame([("A", 1), ("A", 2), ("B", 3), ("B", 4)], ["key", "value"])
df.groupBy("key").agg(sf.max(df.value)).show()
+---+----------+
|key|max(value)|
+---+----------+
| A| 2|
| B| 4|
+---+----------+
Exemple 4 : calculez la valeur maximale de plusieurs colonnes dans un DataFrame groupé
import pyspark.sql.functions as sf
df = spark.createDataFrame(
[("A", 1, 2), ("A", 2, 3), ("B", 3, 4), ("B", 4, 5)], ["key", "value1", "value2"])
df.groupBy("key").agg(sf.max("value1"), sf.max("value2")).show()
+---+-----------+-----------+
|key|max(value1)|max(value2)|
+---+-----------+-----------+
| A| 2| 3|
| B| 4| 5|
+---+-----------+-----------+
Exemple 5 : Calculez la valeur maximale d'une colonne avec des valeurs nulles
import pyspark.sql.functions as sf
df = spark.createDataFrame([(1,), (2,), (None,)], ["value"])
df.select(sf.max(df.value)).show()
+----------+
|max(value)|
+----------+
| 2|
+----------+
Exemple 6 : Calculer la valeur maximale d'une colonne avec des valeurs « NaN »
import pyspark.sql.functions as sf
df = spark.createDataFrame([(1.1,), (float("nan"),), (3.3,)], ["value"])
df.select(sf.max(df.value)).show()
+----------+
|max(value)|
+----------+
| NaN|
+----------+