始める無料で始める

時間要素での結合

日付の要素を使って、別の情報セットを結合することはよくあります。ただしこの例では、家の購入を検討している人が利用できたであろうデータを使う必要があります。つまり、分析には前年の報告データを使う必要があります。

この演習はコースの一部です

PySparkで学ぶ特徴量エンジニアリング

コースを見る

演習の手順

  • year()を使ってLISTDATEから年を抽出し、withColumn()list_yearという新しい列に入れます。
  • list_yearから1を引いて、report_yearという別の新しい列を作成します。
  • df['CITY']price_df['City']df['report_year']price_df['Year']が一致するような結合条件を作成します。
  • dfprice_dfの間でleft joinを実行します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

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()
コードを編集して実行