Benutzerdefinierte prozentuale Skalierung
In den Folien haben wir gezeigt, wie man Daten zwischen 0 und 1 skaliert. Manchmal möchtest du jedoch für Modellierung oder Darstellung anders skalieren.
Diese Übung ist Teil des Kurses
<Kurs>Feature Engineering mit PySpark</Kurs>Übungsanweisungen
- Berechne das Maximum und Minimum von
DAYSONMARKETund speichere sie in den Variablenmax_daysundmin_days. Vergiss nicht,collect()aufagg()anzuwenden. - Erzeuge mit
withColumn()eine neue Spalte namens 'percentagescaleddays' auf Basis vonDAYSONMARKET. percentage_scaled_dayssoll eine Spalte von ganzen Zahlen im Bereich 0 bis 100 sein. Verwenderound(), um ganze Zahlen zu erhalten.- Gib
max()undmin()für die neue Spaltepercentage_scaled_daysaus.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Define max and min values and collect them
max_days = df.____({____: ____}).____()[0][0]
min_days = df.____({____: ____}).____()[0][0]
# Create a new column based off the scaled data
df = df.____(____,
____((df[____] - min_days) / (max_days - min_days)) * ____)
# Calc max and min for new column
print(df.____({____: ____}).____())
print(df.____({____: ____}).____())