Teilen über


Filter

Gibt ein Array von Elementen zurück, für das ein Prädikat in einem bestimmten Array enthalten ist. Unterstützt Spark Connect.

Die entsprechende Databricks SQL-Funktion finden Sie unter filter Funktion.

Syntax

from pyspark.databricks.sql import functions as dbf

dbf.filter(col=<col>, f=<f>)

Die Parameter

Parameter Typ Description
col pyspark.sql.Column oder str Name der Spalte oder des Ausdrucks.
f function Eine Funktion, die den booleschen Ausdruck zurückgibt. Kann eine der folgenden Formen annehmen: "Unary (x: Column) -> Column " oder "Binary (x: Column, i: Column) -> Column ", wobei das zweite Argument ein 0-basierter Index des Elements ist.

Rückkehr

pyspark.sql.Column: gefiltertes Array von Elementen, bei denen die angegebene Funktion als Argument als Argument ausgewertet wurde.

Examples

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame(
    [(1, ["2018-09-20",  "2019-02-03", "2019-07-01", "2020-06-01"])],
    ("key", "values")
)
def after_second_quarter(x):
    return dbf.month(dbf.to_date(x)) > 6
df.select(
    dbf.filter("values", after_second_quarter).alias("after_second_quarter")
).show(truncate=False)
+------------------------+
|after_second_quarter    |
+------------------------+
|[2018-09-20, 2019-07-01]|
+------------------------+