Comece agoraComece grátis

Fazendo join por componentes de tempo

Muitas vezes você vai usar componentes de data para fazer join com outros conjuntos de informações. Porém, neste exemplo, precisamos usar dados que estariam disponíveis para quem estivesse pensando em comprar uma casa. Isso significa que vamos precisar usar os dados de relatório do ano anterior na nossa análise.

Este exercicio faz parte do curso

Feature Engineering com PySpark

Ver curso

Instruções do exercicio

  • Extraia o ano de LISTDATE usando year() e coloque-o em uma nova coluna chamada list_year com withColumn()
  • Crie outra coluna chamada report_year subtraindo 1 de list_year
  • Crie uma condição de junção que combine df['CITY'] com price_df['City'] e df['report_year'] com price_df['Year']
  • Execute um left join entre df e price_df

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

from pyspark.sql.functions import year

# Initialize dataframes
df = real_estate_df
price_df = median_prices_df

# Create year column
df = df.____(____, ____(____))

# Adjust year to match
df = df.withColumn(____, (df[____] - 1))

# Create join condition
condition = [df[____] == price_df[____], df[____] == price_df[____]]

# Join the dataframes together
df = ____.join(____, on=condition, how=____)
# Inspect that new columns are available
df[['MedianHomeValue']].show()
Editar e Executar Código