從文字萃取成新特徵
在明尼蘇達州,車庫是買屋時的重要考量,因為多數人都有車,而且把停在戶外的車清雪很麻煩。車庫的類型也很關鍵──能不能不吹寒風就直接上車?我們來建立一個特徵 has_attached_garage,用來表示車庫是否為與房屋相連的「附掛式」車庫。
本練習屬於課程
使用 PySpark 進行特徵工程
練習說明
- 從
pyspark.sql.functions匯入所需的when()。 - 使用
like()在df['GARAGEDESCRIPTION']中尋找字串樣式Attached Garage,並使用萬用字元%,讓它能在欄位的任意位置比對成功。 - 同樣地,使用
like()在df['GARAGEDESCRIPTION']中尋找字串樣式Detached Garage,並使用萬用字元%,讓它能在欄位的任意位置比對成功。 - 使用
when()建立新欄位has_attached_garage:若為附掛式車庫指定值為 1,若為獨立式車庫指定值為 0,其他情況則用otherwise()指定為None(null)。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Import needed functions
____ ____ ____ ____
# Create boolean conditions for string matches
has_attached_garage = df[____].____(____)
has_detached_garage = df[____].____(____)
# Conditional value assignment
df = df.withColumn(____, (____(____, 1)
.____(____, 0)
.____(____)))
# Inspect results
df[['GARAGEDESCRIPTION', 'has_attached_garage']].show(truncate=100)