शुरू करेंमुफ़्त में शुरू करें

Pivot & Join

किसी compound फ़ील्ड को explode और pivot करना उपयोगी है, लेकिन उससे आपके पास केवल उन्हीं पिवट किए गए मानों वाला dataframe रह जाता है। इसे सच में मूल्यवान बनाने के लिए आपको उसे मूल डेटासेट से पुनः join करना होगा! डेटासेट्स को जॉइन करने के बाद, नई बनी कॉलमों में बहुत से NULL मान होंगे। क्योंकि हमें उनके बनने का संदर्भ पता है, हम उन्हें निश्चिंत होकर शून्य से भर सकते हैं — यानी नया एट्रिब्यूट है या नहीं है।

यह अभ्यास पाठ्यक्रम का हिस्सा है

PySpark के साथ Feature Engineering

पाठ्यक्रम देखें

अभ्यास निर्देश

  • groupBy() के साथ रिकॉर्ड आईडी NO पर group करके ex_garage_list के मानों को pivot करें। nulls को नज़रअंदाज़ करने और पहला मान लेने के लिए दिए गए कोड से constant_val को aggregate करें।
  • NO को join शर्त के रूप में उपयोग करते हुए piv_df को df से left join करें।
  • piv_df के columns एट्रिब्यूट का उपयोग करके ज़ीरो-फिल करने हेतु कॉलमों की सूची zfill_cols बनाएँ।
  • fillna() के साथ subset देकर पिवट किए गए dataframe की कॉलमों zfill_cols को ज़ीरो-फिल करें।

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

from pyspark.sql.functions import coalesce, first

# Pivot 
piv_df = ex_df.____(____).____(____).agg(coalesce(first(____)))

# Join the dataframes together and fill null
joined_df = ____.join(____, on='NO', how=____)

# Columns to zero fill
zfill_cols = ____.____

# Zero fill the pivoted values
zfilled_df = joined_df.____(0, subset=____)
कोड संपादित करें और चलाएँ