Зʼєднання за компонентами часу
Доволі часто для зʼєднання з іншими наборами інформації ви використовуєте компоненти дати. Однак у цьому прикладі нам потрібні дані, які були б доступні тим, хто розглядав купівлю будинку. Тобто для аналізу потрібно використати звітні дані за попередній рік.
Ця вправа є частиною курсу
Опрацювання ознак у PySpark
Інструкції до вправи
- Видобудьте рік з
LISTDATEза допомогоюyear()і збережіть його в нову колонкуlist_yearчерезwithColumn() - Створіть ще одну нову колонку
report_year, віднявши 1 відlist_year - Створіть умову зʼєднання, яка зіставляє
df['CITY']зprice_df['City']іdf['report_year']зprice_df['Year'] - Виконайте ліве зʼєднання між
dfіprice_df
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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()