返回一个包含满足谓词条件的元素的数组。 支持 Spark Connect。
有关相应的 Databricks SQL 函数,请参阅 filter 函数。
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.filter(col=<col>, f=<f>)
参数
| 参数 | 类型 | Description |
|---|---|---|
col |
pyspark.sql.Column 或 str |
列或表达式的名称。 |
f |
function |
一个返回布尔表达式的函数。 可以采用以下形式之一:一元 (x: Column) -> Column 或二进制 (x: Column, i: Column) -> Column ,其中第二个参数是元素的从 0 开始的索引。 |
退货
pyspark.sql.Column:筛选了给定函数作为参数传递时计算结果为 True 的元素数组。
例子
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]|
+------------------------+