मिसिंग डेटा के साथ काम

PySpark के साथ Feature Engineering

John Hogue

Lead Data Scientist, General Mills

डिजिटल युग में डेटा कैसे मिसिंग होता है?

Data Collection

  • Broken Sensors

Data Storage Rules

  • 2017-01-01 बनाम January 1st, 2017

Joining Disparate Data

  • Monthly to Weekly

Intentionally Missing

  • गोपनीयता संबंधी चिंताएँ

मिसिंग

PySpark के साथ Feature Engineering

मिसिंग के प्रकार

पूरी तरह रैंडम तरीके से मिसिंग

  • मिसिंग डेटा एक बिल्कुल रैंडम सबसेट है

रैंडम तरीके से मिसिंग

  • किसी अन्य ऑब्जर्वेशन के आधार पर सशर्त रैंडम मिसिंग

रैंडम नहीं तरीके से मिसिंग

  • कलेक्शन के तरीके के कारण डेटा मिसिंग है
PySpark के साथ Feature Engineering

मिसिंग वैल्यूज़ का आकलन

कब मिसिंग डेटा वाली पंक्तियाँ ड्रॉप करें?

  • मिसिंग वैल्यूज़ दुर्लभ हों
  • पूरी तरह रैंडम तरीके से मिसिंग

isNull()

  • अगर करंट एक्सप्रेशन null हो तो True.
df.where(df['ROOF'].isNull()).count()
765
PySpark के साथ Feature Engineering

मिसिंग वैल्यूज़ का प्लॉट

# Import library
import seaborn as sns

# subset the dataframe sub_df = df.select(['ROOMAREA1'])
# sample the dataframe sample_df = sub_df.sample(False, .5, 4)
# Convert to Pandas DataFrame pandas_df = sample_df.toPandas()
# Plot it sns.heatmap(data=pandas_df.isnull())
PySpark के साथ Feature Engineering

मिसिंग वैल्यूज़ हीटमैप

मिसिंग डेटा हीटमैप

PySpark के साथ Feature Engineering

मिसिंग वैल्यूज़ का इम्प्यूटेशन

मिसिंग वैल्यूज़ को बदलने की प्रक्रिया

रूल-आधारित

  • बिज़नेस लॉजिक पर आधारित वैल्यू

स्टैटिस्टिक्स-आधारित

  • mean, median आदि का उपयोग

मॉडल-आधारित

  • वैल्यू प्रेडिक्ट करने को मॉडल का उपयोग करें
PySpark के साथ Feature Engineering

मिसिंग वैल्यूज़ का इम्प्यूटेशन

** fillna(value, subset=None)

  • value वह वैल्यू जिससे मिसिंग बदली जाए
  • subset वे कॉलम जिनमें मिसिंग बदली जाए
# मिसिंग वैल्यूज़ को शून्य से बदलना
df.fillna(0, subset=['DAYSONMARKET'])
# उस कॉलम के mean से बदलना
col_mean = df.agg({'DAYSONMARKET': 'mean'}).collect()[0][0]
df.fillna(col_mean, subset=['DAYSONMARKET'])
PySpark के साथ Feature Engineering

अभ्यास करते हैं!

PySpark के साथ Feature Engineering

Preparing Video For Download...