ازگر اور پانڈوں کے ساتھ ڈیٹا کلیننگ کیسے کریں۔

Azgr Awr Pan W K Sat Y A Klynng Kys Kry



Python اور Pandas کا استعمال کرتے ہوئے ڈیٹا کو صاف کرنا سیکھنا ڈیٹا کے ساتھ کام کرنے والے ہر فرد کے لیے بہت ضروری ہے۔ ڈیٹا کی صفائی زیادہ تر غلطیاں اور تضادات کو دور کرکے درست تجزیہ اور ماڈلنگ کے لیے استعمال ہوتی ہے۔ یہ گائیڈ مرحلہ وار عمل سے گزرتا ہے جس کے ذریعے ہمیں یہ دکھاتا ہے کہ گمشدہ ڈیٹا کو کیسے ہینڈل کیا جائے اور باہر نکلنے والوں کی شناخت کیسے کی جائے۔ Python اور Pandas کو اپنے ٹولز کے طور پر، ہم گندے ڈیٹا کو صاف، قابل استعمال معلومات میں تبدیل کر سکتے ہیں۔ یہ گائیڈ ہمارے ڈیٹا کے معیار کو بہتر بنانے اور اسے تجزیہ اور فیصلہ سازی کے لیے تیار کرنے میں بھی ہماری مدد کرتا ہے۔

ازگر اور پانڈوں سے ڈیٹا صاف کرنا

ڈیٹا آج فیصلہ سازی کے بنیادی بلاکس کی طرح ہے۔ لیکن تصور کریں کہ اس مجموعے سے مختلف اشکال اور سائز کے بلاکس کا ایک گروپ ہے۔ کوئی بھی معنی خیز بنانا مشکل ہے۔ یہ وہ جگہ ہے جہاں ڈیٹا کی صفائی میں مدد ملتی ہے۔

یہ گائیڈ دریافت کرتا ہے کہ Python کے فریم ورک کا استعمال کرتے ہوئے ڈیٹا کو کیسے صاف کیا جائے جو بہتر فیصلہ سازی کے لیے پانڈاس ہے۔ ڈیٹا کی صفائی بھی ضروری ہے، اس بات پر غور کرتے ہوئے کہ ہم ایک اسٹور کے سیلز ریکارڈ کی فہرست کے ساتھ کام کر رہے ہیں۔ ہم فہرست میں بغیر کسی وجہ کے کچھ گمشدہ نمبرز، عجیب تاریخیں، اور دہرائی جانے والی اشیاء کو دیکھ سکتے ہیں۔ اگر ہم اس معلومات کی بنیاد پر حساب یا ریکارڈ بناتے ہیں، تو یہ مسائل ہمارے حسابات اور پیشین گوئیوں میں خلل ڈال سکتے ہیں۔ ڈیٹا کی صفائی ان مسائل کو حل کرنے میں مدد کرتی ہے، اس بات کو یقینی بناتے ہوئے کہ ہمارا ڈیٹا درست اور استعمال کے لیے تیار ہے۔







ڈیٹا کی صفائی میں گمشدہ ڈیٹا کو ہینڈل کرنا اور جب کچھ ڈیٹا غائب ہو تو کیا کرنا، ڈپلیکیٹس کو ہٹانا، کاپی شدہ چیزوں سے چھٹکارا حاصل کرنا، ڈیٹا کی قسموں کو ٹھیک کرنا، اس بات کو یقینی بنانا کہ سب کچھ صحیح شکل میں ہے، اور آؤٹ لیرز سے نمٹنا یا نمبروں کو ہینڈل کرنا شامل ہے۔ جو کہ فٹ نہیں بیٹھتے۔ یہ غلطیاں ڈیٹا کو ایک جیسا دکھاتی ہیں اور ڈیٹا کے ظاہر ہونے کے طریقے کو معیاری بناتی ہیں۔



شروع کرنے کے لیے، پہلے یہ یقینی بنائیں کہ ہمارے پاس Python اور Pandas انسٹال ہیں۔ ہم اپنے کمپیوٹر کے ٹرمینل یا کمانڈ پرامپٹ میں کمانڈز ٹائپ کرکے ایسا کرسکتے ہیں۔ اس گائیڈ میں ذکر کردہ کوڈز کو لاگو کرنے کے لیے، ہم Python Pycharm IDE استعمال کر سکتے ہیں جو ہمارے سسٹم پر انسٹال ہے یا آن لائن Python پلیٹ فارم جو کہ 'Google Colab' ہے اور اہم لائبریریوں کو انسٹال کرنے کے لیے 'pip' کمانڈز انسٹال کر سکتے ہیں۔



اب، آئیے پانڈا درآمد کریں اور اپنا نمونہ ڈیٹا لوڈ کریں۔ اس مثال کے لیے، ہم کوڈز چلانے کے لیے Google Colab استعمال کرتے ہیں۔ لہذا، ہم سب سے پہلے مندرجہ ذیل کمانڈ درج کرکے پانڈوں کو درآمد کرتے ہیں:





! pip انسٹال پانڈا۔

درآمد پانڈے کے طور پر pd

درآمد بے حس کے طور پر جیسے

پھر، ہم اس ڈیٹاسیٹ کو لوڈ کرتے ہیں جسے ہم pd.read() طریقہ استعمال کرکے ڈسپلے کرنا چاہتے ہیں جو فائل پاتھ کو اس کے ان پٹ پیرامیٹر کے طور پر لیتا ہے۔

# ڈیٹاسیٹ لوڈ کریں۔

ڈیٹا = pd read_csv ( '/content/sample_data/california_housing_test.csv' )

# پہلی چند قطاریں دکھائیں۔

پرنٹ کریں ( ڈیٹا سر ( ) )



اگلی مثال میں، ہم ایک چھوٹے اسٹور میں فروخت کے بارے میں ڈیٹا استعمال کرتے ہیں۔ گمشدہ ڈیٹا کو سنبھالنے کے لیے، بعض اوقات ہمارے ڈیٹا میں معلومات غائب ہوتی ہیں۔ ہم ان گمشدہ حصوں کو 'NaN' کہتے ہیں (جس کا مطلب ہے 'نمبر نہیں')۔ Python اسکرپٹ میں ان گمشدہ اقدار کو تلاش کرنے کے لیے، ہم پہلے ڈیٹا سیٹ لوڈ کرتے ہیں جیسا کہ ہم نے پچھلی مثال میں کیا تھا۔ پھر، ہمیں 'missing_values ​​= data.isnull().sum()' فنکشن کا استعمال کرتے ہوئے ڈیٹا سیٹ میں کوئی بھی گمشدہ ویلیو مل جاتی ہے۔ یہ فنکشن ڈیٹاسیٹ میں موجود تمام گمشدہ اقدار کو تلاش کرتا ہے۔ پھر، ہم انہیں پرنٹ () فنکشن کا استعمال کرتے ہوئے ڈسپلے کرتے ہیں۔

! pip انسٹال پانڈا۔
درآمد پانڈے کے طور پر pd
درآمد بے حس کے طور پر جیسے

# ڈیٹاسیٹ لوڈ کریں۔
ڈیٹا = pd read_csv ( '/content/sample_data/california_housing_test.csv' )

# پہلی چند قطاریں دکھائیں۔
پرنٹ کریں ( ڈیٹا سر ( ) )

# گم شدہ اقدار کی جانچ کریں۔
لاپتہ_اقدار = ڈیٹا کالعدم ( ) . رقم ( )

# غائب اقدار کو کالم کے حساب سے شمار دکھائیں۔
پرنٹ کریں ( لاپتہ_اقدار )

جب ہمیں کسی بھی قطار میں کوئی گمشدہ ڈیٹا ملتا ہے جو پہلے ذکر کردہ کوڈ کو چلاتا ہے، تو ہم ان قطاروں کو ہٹا سکتے ہیں کیونکہ ان قطاروں میں زیادہ مفید ڈیٹا نہیں ہوتا ہے۔ یہاں تک کہ ہم ان گمشدہ اقدار کا اندازہ لگا سکتے ہیں اور قریبی پوائنٹس کی بنیاد پر ٹائم بیسڈ ڈیٹا کا تخمینہ لگا کر پڑھے لکھے اندازوں سے خالی جگہوں کو پُر کر سکتے ہیں۔

اب، ہم ان ڈپلیکیٹس کو ہٹاتے ہیں جو ایک ہی چیز کی کاپیاں ہیں کیونکہ وہ ہمارے تجزیہ کو الجھا سکتے ہیں۔ ڈیٹا سیٹ میں ڈپلیکیٹ ویلیوز تلاش کرنے کے لیے، ہم 'duplicate_rows = data[data.duplicated()]' فنکشن استعمال کرتے ہیں۔ ان ڈپلیکیٹ اقدار کو چھوڑنے کے لیے، ہم data.drop_duplicates() فنکشن کو کال کرتے ہیں۔ ہم درج ذیل کوڈ کا استعمال کرکے انہیں تلاش اور ہٹا سکتے ہیں۔

! pip انسٹال پانڈا۔
درآمد پانڈے کے طور پر pd
درآمد بے حس کے طور پر جیسے
# ڈیٹاسیٹ لوڈ کریں۔
ڈیٹا = pd read_csv ( '/content/sample_data/california_housing_test.csv' )
# پہلی چند قطاریں دکھائیں۔
پرنٹ کریں ( ڈیٹا سر ( ) )

# ڈپلیکیٹ قطاروں کی جانچ کریں۔
ڈپلیکیٹ_قطاریں = ڈیٹا [ ڈیٹا ڈپلیکیٹ ( ) ]

# نقلیں ہٹا دیں۔
ڈیٹا = ڈیٹا ڈراپ_ڈپلیکیٹس ( )

# ڈپلیکیٹس کو ہٹانے کے بعد پہلی چند قطاریں دکھائیں۔
پرنٹ کریں ( ڈیٹا سر ( ) )

ڈیٹا کی قسمیں طے کرتی ہیں کہ ڈیٹا کی اقسام کو ٹھیک کرنے کے لیے کون سا ڈیٹا محفوظ کیا جا سکتا ہے۔ ہر قسم کے ڈیٹا کے لیے صحیح قسم کا ہونا ضروری ہے۔ مثال کے طور پر، تاریخوں میں ڈیٹ ٹائم کا ڈیٹا ٹائپ ہونا چاہیے، اور نمبرز ڈیٹا کی قسم میں ہونے چاہئیں جیسے int، float، وغیرہ۔ اپنے ڈیٹا کی ڈیٹا کی اقسام کو چیک کرنے کے لیے، ہم 'data.dtypes' فنکشن استعمال کرتے ہیں۔ اس فنکشن کو درج ذیل طریقے سے استعمال کیا جا سکتا ہے۔

! pip انسٹال پانڈا۔
درآمد پانڈے کے طور پر pd
درآمد بے حس کے طور پر جیسے
# ڈیٹاسیٹ لوڈ کریں۔
ڈیٹا = pd read_csv ( '/content/sample_data/california_housing_test.csv' )
# پہلی چند قطاریں دکھائیں۔
پرنٹ کریں ( ڈیٹا سر ( ) )
# ہر کالم کے ڈیٹا کی اقسام کو چیک کریں۔
ڈیٹا_قسم = ڈیٹا قسمیں

# ڈسپلے ڈیٹا کی اقسام
پرنٹ کریں ( ڈیٹا_قسم )

اگر ہمیں کوئی مسئلہ نظر آتا ہے، تو ہم پانڈوں کا استعمال کرتے ہوئے ڈیٹا کی قسم کو تبدیل کر سکتے ہیں۔ مثال کے طور پر، ہم تاریخوں کو تاریخ کی شکل میں بنا سکتے ہیں۔ ڈیٹا فریم کا 'dtypes' وصف ہر کالم کے ڈیٹا کی اقسام کے بارے میں معلومات فراہم کرتا ہے۔ اگر ہمیں معلوم ہوتا ہے کہ ڈیٹا کی قسم مماثل نہیں ہے، تو ہم کالموں کو مطلوبہ اقسام میں تبدیل کرنے کے لیے Pandas کے astype() فنکشن کا استعمال کر سکتے ہیں۔

ڈیٹا کی قسموں کے بعد، ہمیں بعض اوقات آؤٹ لیرز کا سامنا کرنا پڑتا ہے جو ایسی اقدار ہیں جو دوسروں سے بہت مختلف ہوتی ہیں۔ وہ ہمارے حسابات میں گڑبڑ کر سکتے ہیں۔ آؤٹ لیرز سے نمٹنے کے لیے، ہم ایک فنکشن کی وضاحت کرتے ہیں جو 'np.abs(stats.zscore(data))' z-score فنکشن کا استعمال کرتا ہے جو ہمارے ڈیٹا میں موجود اقدار کا تھریشولڈ ویلیو سے موازنہ کرتا ہے۔ اس حد کی حد کے علاوہ کسی بھی قدر کو آؤٹ لیئر سمجھا جاتا ہے۔ . آئیے دیکھتے ہیں کہ باہر والوں کو کیسے تلاش کریں اور ان کو کیسے سنبھالیں:

! pip انسٹال پانڈا۔
درآمد پانڈے کے طور پر pd
درآمد بے حس کے طور پر جیسے

# ڈیٹاسیٹ لوڈ کریں۔
ڈیٹا = pd read_csv ( '/content/sample_data/california_housing_test.csv' )

# پہلی چند قطاریں دکھائیں۔
پرنٹ کریں ( ڈیٹا سر ( ) )
سے مسالہ دار درآمد اعدادوشمار

def detect_outliers ( ڈیٹا ) :
z_scores = جیسے abs ( اعدادوشمار zscore ( ڈیٹا ) )
واپسی جیسے کہاں ( z_scores > 3 )

# 'سیلز' کالم میں آؤٹ لیرز کا پتہ لگائیں اور ہینڈل کریں۔
باہر کرنے والے = detect_outliers ( ڈیٹا [ 'طول البلد' ] )
ڈیٹا [ 'طول البلد' ] . جگہ [ باہر کرنے والے ] = ڈیٹا [ 'طول البلد' ] . اوسط ( )

# 'بیچنے والی یونٹس' کالم میں آؤٹ لیرز کا پتہ لگائیں اور ہینڈل کریں۔
باہر کرنے والے = detect_outliers ( ڈیٹا [ 'طول' ] )
ڈیٹا [ 'طول' ] . جگہ [ باہر کرنے والے ] = ڈیٹا [ 'طول' ] . اوسط ( )

# آؤٹ لیرز کو سنبھالنے کے بعد پہلی چند قطاریں دکھائیں۔
پرنٹ کریں ( ڈیٹا سر ( ) )

ہم پچھلے کوڈ میں آؤٹ لیرز کو تلاش کرنے اور ٹھیک کرنے کے لیے ایک آسان طریقہ استعمال کرتے ہیں۔ اس میں انتہائی اقدار کو ڈیٹا کی درمیانی قدر سے تبدیل کرنا شامل ہے۔ یہ کوڈ ہمارے ڈیٹا سیٹ کے 'طول البلد' اور 'عرض البلد' کالموں میں آؤٹ لیرز کا پتہ لگانے کے لیے Z-score طریقہ استعمال کرتا ہے۔ آؤٹ لیرز کو ان کے متعلقہ کالموں کی درمیانی قدروں سے بدل دیا جاتا ہے۔

ڈیٹا کو ایک جیسا دکھانے کے لیے، ڈیٹا بعض اوقات مختلف نظر آتا ہے چاہے اس کا مطلب ایک ہی ہو۔ مثال کے طور پر، تاریخیں مختلف شکلوں میں لکھی جا سکتی ہیں۔ معیاری کاری میں ڈیٹا کی مستقل شکل اور نمائندگی کو یقینی بنانا شامل ہے۔ اس میں تاریخوں کو فارمیٹ کرنا، متن کو چھوٹے حروف میں تبدیل کرنا، یا عددی اقدار کو معمول بنانا شامل ہو سکتا ہے۔ آئیے اپنے ڈیٹاسیٹ میں 'تاریخ' کالم کو معیاری بنائیں اور یقینی بنائیں کہ ہمارا ڈیٹا ایک جیسا نظر آتا ہے:

درآمد پانڈے کے طور پر pd
درآمد بے حس کے طور پر جیسے # numpy درآمد کریں۔

# ڈیٹا لوڈ کریں۔
ڈیٹا = pd read_csv ( 'sales_data.csv' )

# 'تاریخ' کالم کو ہم آہنگ بنائیں
ڈیٹا [ 'تاریخ' ] = pd to_datetime ( ڈیٹا [ 'تاریخ' ] )

# دیکھیں اب کیسا لگتا ہے۔
پرنٹ کریں ( ڈیٹا سر ( ) )

اس مثال میں، ہم 'pd.to_datetime(data['Date'])' فنکشن کا استعمال کرتے ہوئے اپنے ڈیٹاسیٹ میں ڈیٹ فارمیٹ کو Python کے ڈیٹ ٹائم فارمیٹ میں معیاری بناتے ہیں۔ 'تاریخ' کالم کو اسی فارمیٹ میں تبدیل کرکے، ہم اس ڈیٹا کے ساتھ کام کرنا آسان بناتے ہیں۔ آؤٹ پٹ ڈیٹاسیٹ کی پہلی چند قطاروں کو معیاری 'تاریخ' کالم کے ساتھ دکھاتا ہے۔

نتیجہ

Python اور Pandas کا استعمال کرتے ہوئے ڈیٹا کی صفائی کے اپنے سفر میں، ہم نے سیکھا کہ تجزیہ کے لیے اپنے ڈیٹا کو کیسے بہتر بنایا جائے۔ ہم نے یہ سمجھ کر شروع کیا کہ ڈیٹا کو صاف کرنا اتنا اہم کیوں ہے۔ یہ ہمیں بہتر فیصلے کرنے میں مدد کرتا ہے۔ ہم نے کھوئے ہوئے ڈیٹا سے نمٹنے، ڈپلیکیٹس کو ہٹانے، ڈیٹا کی قسموں کو ٹھیک کرنے، آؤٹ لیرز کو ہینڈل کرنے اور اپنے ڈیٹا کو ایک جیسا بنانے کا طریقہ دریافت کیا۔ ان مہارتوں کے ساتھ، ہم گندے ڈیٹا کو کسی ایسی چیز میں تبدیل کرنے کے لیے بہتر طور پر تیار ہیں جس پر ہم بھروسہ کر سکتے ہیں اور کسی اہم معلومات کو دریافت کرنے کے لیے استعمال کر سکتے ہیں۔ ڈیٹا کی صفائی ایک جاری عمل ہے، جیسا کہ اپنے کمرے کو صاف ستھرا رکھنا، اور یہ ہمارے ڈیٹا کے تجزیہ کے سفر کو مزید کامیاب بناتا ہے۔