Join pe Componente de Timp
De multe ori vei folosi componente de dată pentru a integra seturi suplimentare de informații prin join. În acest exemplu, trebuie să utilizăm date care ar fi fost disponibile celor care intenționau să cumpere o locuință. Prin urmare, vom folosi datele raportate în anul anterior pentru analiza noastră.
Acest exercițiu face parte din cursul
Feature Engineering cu PySpark
Instrucțiuni pentru exercițiu
- Extrage anul din
LISTDATEfolosindyear()și pune-l într-o coloană nouă numitălist_yearcuwithColumn() - Creează o altă coloană nouă numită
report_yearscăzând 1 dinlist_year - Creează o condiție de join care să asocieze
df['CITY']cuprice_df['City']șidf['report_year']cuprice_df['Year'] - Realizează un left join între
dfșiprice_df
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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()