CommencezCommencez gratuitement

Joindre sur les composantes temporelles

Vous utiliserez souvent des composantes de date pour joindre d'autres ensembles d'information. Toutefois, dans cet exemple, nous devons utiliser des données qui auraient été accessibles aux personnes envisageant d'acheter une maison. Cela signifie que, pour notre analyse, nous devons nous baser sur les données de déclaration de l'année précédente.

Cette activité fait partie du cours

Ingénierie des caractéristiques avec PySpark

Voir le cours

Instructions de l’exercice

  • Extraire l'année de LISTDATE avec year() et la placer dans une nouvelle colonne nommée list_year à l'aide de withColumn()
  • Créer une autre colonne nommée report_year en soustrayant 1 de list_year
  • Créer une condition de jointure qui associe df['CITY'] à price_df['City'] et df['report_year'] à price_df['Year']
  • Effectuer une jointure gauche entre df et price_df

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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()
Modifier et exécuter le code