將星期幾二值化
在前面的影片中,我們看到房屋在週末刊登的機率相當低。現在來建立一個新欄位,用來標示房屋是否在工作日以外(也就是週末)刊登。在這個例子中,有個欄位 List_Day_of_Week,其中 Monday 標記為 1.0,Sunday 為 7.0。把它轉成二元欄位:工作日為 0、週末為 1。我們可以用 pyspark 的特徵轉換器 Binarizer 來完成。
本練習屬於課程
使用 PySpark 進行特徵工程
練習說明
- 從
pyspark的ml.feature模組匯入特徵轉換器Binarizer。 - 使用
Binarizer()建立轉換器,門檻設定為 Friday(5.0)之後的值要設為 1,接著將輸入欄位設為List_Day_of_Week,輸出欄位設為Listed_On_Weekend。 - 對
df呼叫transform()套用二值化轉換。 - 透過選取
List_Day_of_Week與Listed_On_Weekend欄位並使用show()來驗證轉換是否正確。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Import transformer
from pyspark.____.____ import ____
# Create the transformer
binarizer = ____(threshold=____ inputCol=____, outputCol=____)
# Apply the transformation to df
df = binarizer.____(____)
# Verify transformation
df[[____, ____]].____()