Suddividere ed esplodere
Prendere un campo composto come GARAGEDESCRIPTION e trasformarlo in qualcosa di utile è un processo articolato. È utile capire fin da subito quale valore potresti ottenere espandendolo. In questo esempio, convertiremo la stringa in un array simile a una lista, la esploderemo e poi ispezioneremo i valori unici.
Questo esercizio fa parte del corso
Feature Engineering con PySpark
Istruzioni dell'esercizio
- Importa le funzioni necessarie
split()edexplode()dapyspark.sql.functions - Usa
split()per creare una nuova colonnagarage_listdividendodf['GARAGEDESCRIPTION']su ', ', cioè una virgola seguita da uno spazio. - Crea un nuovo record per ciascun valore in
df['garage_list']usandoexplode()e assegnalo a una nuova colonnaex_garage_list - Usa
distinct()per ottenere i valori unici diex_garage_listeshowle prime 100 righe, troncandole a 50 caratteri per visualizzare i valori.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Import needed functions
____ ____ ____ ____, ____
# Convert string to list-like array
df = df.withColumn(____, ____(____, ____))
# Explode the values into new records
ex_df = df.withColumn(____, ____(____))
# Inspect the values
ex_df[['ex_garage_list']].____().____(100, ____=____)