Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sammlungsfunktion: Gibt eine neue Zuordnungsspalte zurück, deren Schlüsselwertpaare eine bestimmte Prädikatfunktion erfüllen. Unterstützt Spark Connect.
Die entsprechende Databricks SQL-Funktion finden Sie unter map_filter Funktion.
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.map_filter(col=<col>, f=<f>)
Die Parameter
| Parameter | Typ | Description |
|---|---|---|
col |
pyspark.sql.Column oder str |
Der Name der Spalte oder eines Spaltenausdrucks, der die zu filternde Zuordnung darstellt. |
f |
function |
Eine binäre Funktion, die das Prädikat definiert. Diese Funktion sollte eine boolesche Spalte zurückgeben, die zum Filtern der Eingabezuordnung verwendet wird. |
Rückkehr
pyspark.sql.Column: Eine neue Zuordnungsspalte, die nur die Schlüsselwertpaare enthält, die das Prädikat erfüllen.
Examples
Beispiel 1: Filtern einer Karte mit einer einfachen Bedingung
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1, {"foo": 42.0, "bar": 1.0, "baz": 32.0})], ("id", "data"))
row = df.select(
dbf.map_filter("data", lambda _, v: v > 30.0).alias("data_filtered")
).head()
sorted(row["data_filtered"].items())
[('baz', 32.0), ('foo', 42.0)]
Beispiel 2: Filtern einer Karte mit einer Bedingung auf Schlüsseln
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1, {"foo": 42.0, "bar": 1.0, "baz": 32.0})], ("id", "data"))
row = df.select(
dbf.map_filter("data", lambda k, _: k.startswith("b")).alias("data_filtered")
).head()
sorted(row["data_filtered"].items())
[('bar', 1.0), ('baz', 32.0)]