Aller au contenu principal

first_value

Renvoie la première valeur de col pour un groupe de lignes. Il renverra la première valeur non nulle qu'il trouve 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.first_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 première valeur sans ignorer les valeurs nulles

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

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

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