Aller au contenu principal

last_value

Renvoie la dernière valeur de col pour un groupe de lignes. Il renverra la dernière valeur non nulle qu'il voit lorsque ignoreNulls est défini sur true. Si toutes les valeurs sont nulles, la valeur nulle est renvoyée.

Syntaxe

Python
from pyspark.sql import functions as sf

sf.last_value(col, ignoreNulls=None)

parameter

parameter

Type

Description

col

pyspark.sql.Column ou str

Colonne cible sur laquelle travailler.

ignoreNulls

pyspark.sql.Column ou booléen, facultatif

Si la première valeur est nulle, alors recherchez la première valeur non nulle.

parameter

Type

Description

col

pyspark.sql.Column ou str

Colonne cible sur laquelle travailler.

ignoreNulls

pyspark.sql.Column ou booléen, facultatif

Si la première valeur est nulle, alors recherchez la première valeur non nulle.

Renvoie

pyspark.sql.Column : une certaine valeur de col pour un groupe de lignes.

Exemples

Exemple 1 : obtenir la dernière valeur sans ignorer les valeurs nulles

Python
from pyspark.sql import functions as sf
spark.createDataFrame(
[("a", 1), ("a", 2), ("a", 3), ("b", 8), (None, 2)], ["a", "b"]
).select(sf.last_value('a'), sf.last_value('b')).show()
Output
+-------------+-------------+
|last_value(a)|last_value(b)|
+-------------+-------------+
| NULL| 2|
+-------------+-------------+

Exemple 2 : Obtenir la dernière valeur en ignorant les valeurs nulles

Python
from pyspark.sql import functions as sf
spark.createDataFrame(
[("a", 1), ("a", 2), ("a", 3), ("b", 8), (None, 2)], ["a", "b"]
).select(sf.last_value('a', True), sf.last_value('b', True)).show()
Output
+-------------+-------------+
|last_value(a)|last_value(b)|
+-------------+-------------+
| b| 2|
+-------------+-------------+