Condividi tramite


first_value

Restituisce il primo valore di col per un gruppo di righe. Restituisce il primo valore non Null visualizzato quando ignoreNulls è impostato su true. Se tutti i valori sono Null, viene restituito null.

Sintassi

from pyspark.sql import functions as sf

sf.first_value(col, ignoreNulls=None)

Parametri

Parametro TIPO Description
col pyspark.sql.Column o str Colonna di destinazione su cui lavorare.
ignoreNulls pyspark.sql.Column o bool, facoltativo Se il primo valore è Null, cercare il primo valore non Null.

Restituzioni

pyspark.sql.Column: valore di col per un gruppo di righe.

Esempi

Esempio 1: Ottenere il primo valore senza ignorare i valori Null

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()
+--------------+--------------+
|first_value(a)|first_value(b)|
+--------------+--------------+
|          NULL|             1|
+--------------+--------------+

Esempio 2: Ottenere il primo valore ignorando i valori Null

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()
+--------------+--------------+
|first_value(a)|first_value(b)|
+--------------+--------------+
|             a|             1|
+--------------+--------------+