máximo
Retorna o valor máximo da expressão em um grupo. Valores nulos são ignorados durante o cálculo. Os valores NaN são maiores que qualquer outro valor numérico.
Sintaxe
Python
from pyspark.sql import functions as sf
sf.max(col)
Parâmetros
Parâmetro | Tipo | Descrição |
|---|---|---|
|
| A coluna de destino na qual o valor máximo é calculado. |
Devoluções
pyspark.sql.ColumnUma coluna que contém o valor máximo calculado.
Exemplos
Exemplo 1 : calcular o valor máximo de uma coluna numérica
Python
import pyspark.sql.functions as sf
df = spark.range(10)
df.select(sf.max(df.id)).show()
Output
+-------+
|max(id)|
+-------+
| 9|
+-------+
Exemplo 2 : calcular o valor máximo de uma coluna de strings
Python
import pyspark.sql.functions as sf
df = spark.createDataFrame([("A",), ("B",), ("C",)], ["value"])
df.select(sf.max(df.value)).show()
Output
+----------+
|max(value)|
+----------+
| C|
+----------+
Exemplo 3 : calcular o valor máximo de uma coluna em um DataFrameagrupado
Python
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()
Output
+---+----------+
|key|max(value)|
+---+----------+
| A| 2|
| B| 4|
+---+----------+
Exemplo 4 : calcular o valor máximo de várias colunas em um DataFrameagrupado
Python
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()
Output
+---+-----------+-----------+
|key|max(value1)|max(value2)|
+---+-----------+-----------+
| A| 2| 3|
| B| 4| 5|
+---+-----------+-----------+
Exemplo 5 : calcular o valor máximo de uma coluna com valores nulos.
Python
import pyspark.sql.functions as sf
df = spark.createDataFrame([(1,), (2,), (None,)], ["value"])
df.select(sf.max(df.value)).show()
Output
+----------+
|max(value)|
+----------+
| 2|
+----------+
Exemplo 6 : calcular o valor máximo de uma coluna com valores "NaN"
Python
import pyspark.sql.functions as sf
df = spark.createDataFrame([(1.1,), (float("nan"),), (3.3,)], ["value"])
df.select(sf.max(df.value)).show()
Output
+----------+
|max(value)|
+----------+
| NaN|
+----------+