当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python PySpark DataFrame filter方法用法及代码示例


PySpark DataFrame 的filter(~) 方法返回DataFrame 中满足给定条件的行。

注意

filter(~) 方法是where(~) 方法的别名。

参数

1.condition | Columnstring

布尔掩码 (Column) 或 SQL 字符串表达式。

返回值

一个新的 PySpark 数据帧。

例子

考虑以下PySpark DataFrame:

df = spark.createDataFrame([["Alex", 20], ["Bob", 30], ["Cathy", 40]], ["name", "age"])
df.show()



+-----+---+
| name|age|
+-----+---+
| Alex| 20|
|  Bob| 30|
|Cathy| 40|
+-----+---+

要获取 age 大于 25 的行:

df.filter("age > 25").show()



+-----+---+
| name|age|
+-----+---+
|  Bob| 30|
|Cathy| 40|
+-----+---+

同样,我们可以传递一个表示布尔掩码的 Column 对象:

df.filter(df.age > 25).show()



+-----+---+
| name|age|
+-----+---+
|  Bob| 30|
|Cathy| 40|
+-----+---+

同样,我们也可以使用sql.Functions获得布尔掩码:

from pyspark.sql import functions as F
df.filter(F.col("age") > 25).show()



+-----+---+
| name|age|
+-----+---+
|  Bob| 30|
|Cathy| 40|
+-----+---+

此处,F.col("age")age 列作为 Column 对象返回。

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 PySpark DataFrame | filter method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。