Dividir e Explodir
Conseguir pegar um campo composto como GARAGEDESCRIPTION e transformá-lo em algo útil é um processo trabalhoso. É útil entender desde cedo que valor você pode extrair ao expandi-lo. Neste exemplo, vamos converter nossa string em um array (tipo lista), aplicar explode e depois inspecionar os valores únicos.
Este exercício faz parte do curso
Feature Engineering com PySpark
Instruções do exercício
- Importe as funções necessárias
split()eexplode()depyspark.sql.functions - Use
split()para criar uma nova colunagarage_listdividindodf['GARAGEDESCRIPTION']por ', ', que é uma vírgula seguida de um espaço. - Crie um novo registro para cada valor em
df['garage_list']usandoexplode()e atribua-o a uma nova colunaex_garage_list - Use
distinct()para obter os valores únicos deex_garage_listeshowas 100 primeiras linhas, truncando-as em 50 caracteres para exibir os valores.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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, ____=____)