Python के साथ कॉलम कंटेंट फ़िल्टर करना
आपने DataFrame कॉलम्स पर अलग-अलग ऑपरेशंस देखे हैं — अब आप एक असली डेटासेट को मॉडिफाई कर सकते हैं. DataFrame voter_df में पिछले कुछ सालों में Dallas City Council के वोटर्स से जुड़ी जानकारी है. इस ट्रंकेटेड DataFrame में कास्ट किए गए वोट की तारीख, और वोटर का नाम व पद शामिल है. आपके मैनेजर ने आपसे कहा है कि इस डेटा को क्लीन करें ताकि बाद में इसे कुछ आवश्यक रिपोर्ट्स में इंटीग्रेट किया जा सके. मुख्य काम है सभी null एंट्रीज़ या अजीब कैरेक्टर्स हटाना और एक तय सेट के वोटर्स लौटाना, जिनकी जानकारी आप वैलिडेट कर सकें.
यह आम तौर पर डेटा क्लीनिंग के शुरुआती स्टेप्स में से एक होता है — ऐसे सब कुछ हटाना जो फॉर्मेट के साफ़ तौर पर बाहर हो. इस डेटासेट के लिए, मूल डेटा को ज़रूर देखें और VOTER_NAME कॉलम में क्या असामान्य दिखता है, उसे पहचाने.
pyspark.sql.functions लाइब्रेरी पहले से ही F उपनाम (alias) के साथ इम्पोर्ट की गई है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
PySpark के साथ डेटा क्लीनिंग
अभ्यास निर्देश
VOTER_NAMEकी डिस्टिंक्ट एंट्रीज़ दिखाएँ.voter_dfको फ़िल्टर करें जहाँVOTER_NAMEकी लंबाई 1–20 कैरेक्टर्स हो.voter_dfसे वे पंक्तियाँ हटा दें जहाँVOTER_NAMEमें_शामिल हो.- फिर से
VOTER_NAMEकी डिस्टिंक्ट एंट्रीज़ दिखाएँ.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Show the distinct VOTER_NAME entries
voter_df.select(____).distinct().show(40, truncate=False)
# Filter voter_df where the VOTER_NAME is 1-20 characters in length
voter_df = ____('length(VOTER_NAME) > 0 and length(VOTER_NAME) < 20')
# Filter out voter_df where the VOTER_NAME contains an underscore
voter_df = voter_df.filter(~ F.col('VOTER_NAME').____)
# Show the distinct VOTER_NAME entries again
voter_df.____(____).____().____(40, truncate=False)