Teilen über


last_value

Gibt den letzten Wert col für eine Gruppe von Zeilen zurück. Er gibt den letzten Wert ungleich Null zurück, der angezeigt wird, wenn ignoreNulls er auf "true" festgelegt ist. Wenn alle Werte null sind, wird NULL zurückgegeben.

Syntax

from pyspark.sql import functions as sf

sf.last_value(col, ignoreNulls=None)

Die Parameter

Parameter Typ Description
col pyspark.sql.Column oder str Zielspalte, an der gearbeitet werden soll.
ignoreNulls pyspark.sql.Column oder Bool, optional Wenn der erste Wert null ist, suchen Sie nach dem ersten Wert ungleich Null.

Rückkehr

pyspark.sql.Column: ein Wert col für eine Gruppe von Zeilen.

Examples

Beispiel 1: Abrufen des letzten Werts ohne Ignorieren von Nullen

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()
+-------------+-------------+
|last_value(a)|last_value(b)|
+-------------+-------------+
|         NULL|            2|
+-------------+-------------+

Beispiel 2: Abrufen des letzten Werts, der NULL-Werte ignoriert

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()
+-------------+-------------+
|last_value(a)|last_value(b)|
+-------------+-------------+
|            b|            2|
+-------------+-------------+