Feature Engineering met PySpark
John Hogue
Lead Data Scientist, General Mills
Random Forest-regressie

Economisch
Overheid
Sociaal
Seizoensgebonden
Tijdelijke features
Ratio’s, verhoudingen, sommen
Uitgebreide features
# Wat is de shape van onze data?
print((df.count(), len(df.columns)))
(5000, 126)
from pyspark.ml.feature import VectorAssembler
# Vervang missende waarden
df = df.fillna(-1)
# Kolommen definiëren voor vectorconversie
features_cols = list(df.columns)
# Doelvariabele uit de lijst verwijderen
features_cols.remove('SALESCLOSEPRICE')
# Maak de vectorassembler-transformer vec = VectorAssembler(inputCols=features_cols, outputCol='features')# Pas de vectortransformer toe op de data df = vec.transform(df)# Selecteer alleen de featurevectoren en de doelvariabele ml_ready_df = df.select(['SALESCLOSEPRICE', 'features'])# Resultaten bekijken ml_ready_df.show(5)
+----------------+--------------------+
| SALESCLOSEPRICE| features|
+----------------+--------------------+
|143000 |(125,[0,1,2,3,5,6...|
|190000 |(125,[0,1,2,3,5,6...|
|225000 |(125,[0,1,2,3,5,6...|
|265000 |(125,[0,1,2,3,4,5...|
|249900 |(125,[0,1,2,3,4,5...|
+----------------+--------------------+
only showing top 5 rows
Feature Engineering met PySpark