Fractionner et exploser
Prendre un champ composé comme GARAGEDESCRIPTION et le transformer pour en tirer quelque chose d'utile est un processus complexe. Il est utile de comprendre tôt la valeur que vous pourriez obtenir en l'étendant. Dans cet exemple, nous allons convertir notre chaîne en un tableau de type liste, l'exploser, puis examiner les valeurs uniques.
Cette activité fait partie du cours
Ingénierie des caractéristiques avec PySpark
Instructions de l’exercice
- Importez les fonctions nécessaires
split()etexplode()depuispyspark.sql.functions. - Utilisez
split()pour créer une nouvelle colonnegarage_listen séparantdf['GARAGEDESCRIPTION']sur ', ' (une virgule suivie d'un espace). - Créez un nouvel enregistrement pour chaque valeur de
df['garage_list']avecexplode()et attribuez-le à une nouvelle colonneex_garage_list. - Utilisez
distinct()pour obtenir les valeurs uniques deex_garage_listet affichez (show) les 100 premières lignes, en les tronquant à 50 caractères pour visualiser les valeurs.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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, ____=____)