條件式 DataFrame 欄位操作

使用 PySpark 清理資料

Mike Metzger

Data Engineering Consultant

條件子句

「條件子句」是:

  • if / then / else 的行內寫法
  • .when()
  • .otherwise()
使用 PySpark 清理資料

條件範例

.when(<if condition>, <then x>)

df.select(df.Name, df.Age, F.when(df.Age >= 18, "Adult"))

Name Age
Alice 14
Bob 18 Adult
Candice 38 Adult
使用 PySpark 清理資料

另一個範例

多個 .when()

df.select(df.Name, df.Age, 
          .when(df.Age >= 18, "Adult")
          .when(df.Age < 18, "Minor"))
Name Age
Alice 14 Minor
Bob 18 Adult
Candice 38 Adult
使用 PySpark 清理資料

otherwise

.otherwise() 類似 else

df.select(df.Name, df.Age,
          .when(df.Age >= 18, "Adult")
          .otherwise("Minor"))
Name Age
Alice 14 Minor
Bob 18 Adult
Candice 38 Adult
使用 PySpark 清理資料

一起來練習吧!

使用 PySpark 清理資料

Preparing Video For Download...