Začněte nyníZačněte zdarma

Škálování ve velkém

V předchozím cvičení jsme minmax škálovali jednu proměnnou. Co ale dělat, když máš proměnných hodně a nechceš psát stovky řádků kódu pro každou zvlášť? Rozšíříme předchozí řešení a zabalíme ho do funkce.

Toto cvičení je součástí kurzu

Feature Engineering with PySpark

Zobrazit kurz

Pokyny k cvičení

  • Definuj funkci min_max_scaler, která přijímá parametry df (dataframe) a cols_to_scale (seznam sloupců ke škálování).
  • Pomocí smyčky for iteruj přes každý sloupec v seznamu a aplikuj na něj minmax škálování.
  • Vrať dataframe df s nově přidanými sloupci.
  • Zavolej funkci min_max_scaler() na df a seznam sloupců cols_to_scale.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

def ____(____, ____):
  # Takes a dataframe and list of columns to minmax scale. Returns a dataframe.
  for col in ____:
    # Define min and max values and collect them
    max_days = df.agg({col: 'max'}).collect()[0][0]
    min_days = df.agg({____: 'min'}).collect()[0][0]
    new_column_name = 'scaled_' + col
    # Create a new column based off the scaled data
    df = df.withColumn(____, 
                      (df[____] - min_days) / (max_days - min_days))
  return ____
  
df = min_max_scaler(____, ____)
# Show that our data is now between 0 and 1
df[['DAYSONMARKET', 'scaled_DAYSONMARKET']].show()
Upravit a spustit kód