Condividi tramite


filtro

Restituisce un array di elementi per i quali un predicato è soddisfatto in un determinato array. Supporta Spark Connect.

Per la funzione SQL di Databricks corrispondente, vedere filter funzione.

Sintassi

from pyspark.databricks.sql import functions as dbf

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

Parametri

Parametro TIPO Description
col pyspark.sql.Column o str Nome della colonna o dell'espressione.
f function Funzione che restituisce l'espressione booleana. Può accettare una delle forme seguenti: Unario (x: Column) -> Column o Binary (x: Column, i: Column) -> Column in cui il secondo argomento è un indice in base 0 dell'elemento.

Restituzioni

pyspark.sql.Column: matrice filtrata di elementi in cui la funzione specificata ha valutato true quando viene passato come argomento.

Esempi

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]|
+------------------------+