當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。