Scalatura personalizzata in percentuale
Nelle diapositive abbiamo mostrato come scalare i dati tra 0 e 1. A volte potresti voler scalare in modo diverso per esigenze di modellazione o di visualizzazione.
Questo esercizio fa parte del corso
Feature Engineering con PySpark
Istruzioni dell'esercizio
- Calcola il massimo e il minimo di
DAYSONMARKETe assegnali alle variabilimax_daysemin_days; non dimenticare di usarecollect()suagg(). - Usando
withColumn()crea una nuova colonna chiamata 'percentagescaleddays' basata suDAYSONMARKET. percentage_scaled_daysdeve essere una colonna di interi da 0 a 100; usaround()per ottenere interi.- Stampa il
max()e ilmin()della nuova colonnapercentage_scaled_days.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# 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.____({____: ____}).____())