پانڈاس ریانڈیکس

Pan As Ryan Yks



'پانڈا' میں، ہم بہت ساری معلومات کو ٹیبلر شکل میں محفوظ کر سکتے ہیں، جسے ڈیٹا فریم بھی کہا جاتا ہے۔ 'پانڈا' ہمیں ڈیٹا فریم بنانے کے لیے 'DataFrame()' طریقہ کے ساتھ سہولت فراہم کرتا ہے۔ ڈیٹا فریم میں اشاریہ جات ہوتے ہیں، اور ہم 'پانڈا' فنکشنز کو استعمال کر کے ڈیٹا فریم کے اشاریہ جات کو بھی تبدیل کر سکتے ہیں۔ ڈیٹا فریم کو ری انڈیکس کرنے کے لیے ہم جو طریقہ استعمال کرتے ہیں وہ 'ری انڈیکس()' طریقہ ہے۔ یہ طریقہ قطار کی اشاریہ کی قدروں کے ساتھ ساتھ کالموں کی اشاریہ کی قدروں کو تبدیل کرنے میں مدد کرتا ہے۔ اس طریقے کو استعمال کرتے ہوئے، ہم ڈیٹا فریم کے پہلے سے طے شدہ انڈیکس کو تبدیل کر سکتے ہیں، اور اس کے علاوہ، ہم ڈیٹا فریم بناتے وقت جو انڈیکس سیٹ کرتے ہیں، اسے بھی تبدیل کر سکتے ہیں۔ ہم اس ٹیوٹوریل میں اپنے 'پانڈا' کی مثالوں میں 'ری انڈیکس()' طریقہ استعمال کریں گے اور یہاں اس تصور کی گہرائی سے وضاحت کریں گے۔

مثال نمبر 01

'اسپائیڈر' ٹول اس ٹیوٹوریل میں یہاں 'پانڈا' کوڈ تیار کرنے میں ہماری مدد کرتا ہے، اور ہم اپنے کوڈ کو کلیدی لفظ 'import' سے شروع کرتے ہیں جو 'pandas' فنکشن کو درآمد کرنے میں مدد کرے گا۔ ہم 'import' ٹائپ کرنے کے بعد 'pandas as pd' رکھتے ہیں۔ اس کے بعد، ہم 'pd.DataFrame()' ٹائپ کرکے ڈیٹا فریم بناتے ہیں۔ ہم اسے یہاں 'pd' لکھتے ہیں کیونکہ 'DataFrame()' 'pandas' کا طریقہ ہے۔ 'value_df' اس متغیر کا نام ہے جس میں ڈیٹا فریم کو محفوظ کیا گیا ہے۔ ہم 'RandomName' شامل کرتے ہیں، جو کالم کا نام ہے، اور 'RandomName' میں 'Thomas, Oscar, Lilly, Rowan, John, Bromley, Peter, Alexander, and Samuel' شامل ہیں۔







پھر، ہمارے پاس 'ویلیو_1' ہے، جس میں ہم نے '16، 29، 24، 35، 44، 50، 69، 74، اور 88' داخل کیا ہے۔ اس کے بعد 'ویلیو_2' آتا ہے اور ہم نے '25، 38، 42، 56، 54، 65، 78، 89، اور 99' کو شامل کیا ہے۔ اب، 'ویلیو_3' اگلا آتا ہے، اور ہم اس میں '36، 48، 52، 69، 74، 75، 87، 91، اور 69' رکھتے ہیں۔ اس کے بعد 'ویلیو_4' کالم موجود ہے، جہاں ہم نے '52، 64، 72، 88، 82، 95، 97، 21، اور 39' ڈالا ہے۔ آخری کالم یہاں 'ویلیو_5' کالم ہے، اور اس کالم میں، ہم نے جو قدریں شامل کی ہیں وہ ہیں '66، 78، 82، 99، 34، 45، 57، 61، اور 89'۔ اس کے بعد، ہم 'print()' فنکشن استعمال کرتے ہیں جس میں 'Values_df' کو شامل کیا جاتا ہے۔ یہ ٹرمینل پر پرنٹ کرے گا۔




'Shift+Enter' دبانے کے بعد، ہم آسانی سے 'Spyder' ایپ میں اپنے کوڈز کا نتیجہ حاصل کر سکتے ہیں۔ یہاں، یہ کوڈ ڈیفالٹ انڈیکس کے ساتھ ڈیٹا فریم لوٹاتا ہے۔ اب، ہم اس ڈیٹا فریم کو 'پانڈا' میں دوبارہ ترتیب دینے کے لیے 'reindex()' طریقہ استعمال کریں گے۔




'reindex()' فنکشن یہاں قطار کی انڈیکس ویلیو کو ری انڈیکس کرنے کے لیے استعمال کیا جاتا ہے۔ مندرجہ بالا ڈیٹا فریم میں، آپ دیکھ سکتے ہیں کہ قطار کی ڈیفالٹ انڈیکس ویلیوز دکھائے گئے ہیں، اور اب، ہم ان قطار انڈیکس کو دوبارہ ترتیب دینے کے لیے 'ری انڈیکس()' طریقہ استعمال کر رہے ہیں۔ ہم DataFrame کا نام اور پھر 'reindex()' طریقہ رکھتے ہیں جس میں ہم ان انڈیکس ویلیوز کو رکھتے ہیں جنہیں ہم اوپر ڈیٹا فریم میں شامل کرنا چاہتے ہیں۔ ہم نے 'reindex()' فنکشن میں 'ind_A, ind_B, ind_C, ind_D, ind_E, ind_F, ind_G, ind_H, اور ind_I' ڈالا۔ لہذا، جب ہم اس کوڈ پر عمل کریں گے تو ان قطاروں کے اشاریہ جات کو ڈیٹا فریم پر اپ ڈیٹ کیا جائے گا۔






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



مثال نمبر 02

اب ہم 'ویلیو_ڈی ایف' کی کالم انڈیکس ویلیوز کو تبدیل کر رہے ہیں، جسے ہم نے پہلے مثال 1 میں بنایا ہے۔ 'ویلیو_ڈی ایف' پرنٹ کرنے کے بعد، ہم نے 'کالم' متغیر ڈالا اور اس میں کچھ قدریں شامل کیں۔ ہم 'a_1، b_1، c_1، d_1، اور e_1' شامل کرتے ہیں۔ اب، ہم ان اقدار کو کالموں کے اشاریہ کے طور پر ایڈجسٹ کرنا چاہتے ہیں، اس لیے، اس کے لیے، ہم 'reindex()' طریقہ استعمال کر رہے ہیں اور متغیر 'کالم' کا نام رکھ رہے ہیں جس میں نئے کالم انڈیکس کی قدریں محفوظ ہیں اور 'محور' کو 'کالم' پر بھی سیٹ کریں، لہذا، یہ کالم ایکسس انڈیکس کو اپ ڈیٹ کر دے گا۔ ہم 'reindex()' طریقہ کو 'print()' میں ڈالتے ہیں، تو یہ ٹرمینل پر بھی رینڈر ہوگا۔


جیسا کہ ہم نے 'ری انڈیکس()' طریقہ استعمال کیا ہے، کالم انڈیکس ویلیوز جو پہلے ڈیٹا فریم میں موجود ہیں اپ ڈیٹ ہو جاتی ہیں، اور اپ ڈیٹ کردہ ڈیٹا فریم میں نئی ​​ویلیوز شامل کی جاتی ہیں۔ آپ یہ بھی نوٹ کر سکتے ہیں کہ ڈیٹا فریم کی تمام قدریں 'NaN' میں تبدیل ہو جاتی ہیں کیونکہ کالموں کی دونوں اشاریہ کی قدریں مختلف ہوتی ہیں۔

مثال نمبر 03

اس کوڈ میں موجود 'پروگرامنگ_ڈیٹا' میں 'P_Languages' شامل ہے جہاں ہم نے 'JavaScript, CSS, Web Engineering, OOP, C#, AI, Java, اور JavaScript' کو شامل کیا ہے۔ پھر، ہمارے پاس 'گھنٹے' ہیں جس میں ہم '4_hrs، 2_hrs، 3_hrs، 7_hrs، 6_hrs، 5_hrs، 8_hrs، اور 6_hrs' رکھتے ہیں۔ اس کے بعد، 'P_Code' داخل ہوتا ہے، اور ہم '11523، 12423، 12321، 11456، 11454، 12267، 13106، اور 14123' داخل کرتے ہیں۔ ہم 'p_index' متغیر کو شامل کرتے ہیں اور 'Pro_A، Pro_B، Pro_C، Pro_D، Pro_E، Pro_F، Pro_G، اور Pro_H' ڈالتے ہیں۔

یہ اقدار قطاروں کی انڈیکس قدروں کے طور پر استعمال ہوں گی۔ ہم 'پروگرامنگ_ڈیٹا' کو 'پروگرامنگ_ڈی ایف' ڈیٹا فریم میں تبدیل کرتے ہیں۔ ہم 'انڈیکس' طریقہ استعمال کرکے اس ڈیٹا فریم میں 'p_index' بھی شامل کرتے ہیں۔ ہم نے 'پروگرامنگ_ڈی ایف' اور پھر 'انڈیکس' طریقہ ڈالا اور اس کے لیے 'p_index' تفویض کیا۔ اب، مندرجہ بالا انڈیکس ویلیوز کو ڈیٹا فریم میں قطاروں کے انڈیکس کی قدروں کے طور پر شامل کیا جاتا ہے۔ ہم 'پروگرامنگ_ڈی ایف' بھی پرنٹ کرتے ہیں۔

اس کے بعد، ہم 'نیا_انڈیکس' متغیر میں کچھ نئی انڈیکس قدریں شامل کرتے ہیں، اور یہ ہیں 'P_1، P_2، P_3، P_4، P_5، P_6، P_7، اور P_8'۔ جیسا کہ ہم قطاروں کی انڈیکس ویلیو کو اپ ڈیٹ کرنا چاہتے ہیں، ہم 'reindex()' طریقہ استعمال کرتے ہیں اور 'new_index' کو اس فنکشن کے پیرامیٹر کے طور پر رکھتے ہیں اور اپ ڈیٹ کردہ ڈیٹا فریم کو 'newProgramming_df' میں اسٹور کرتے ہیں اور 'newProgramming_df' کو '' میں رکھتے ہیں۔ پرنٹ ()' ڈسپلے کے لیے۔


اشاریہ کی قدروں کو اپ ڈیٹ کیا جاتا ہے، اور ہم یہ بھی کہہ سکتے ہیں کہ ہم نے جو ڈیٹا فریم بنایا ہے اسے دوبارہ ترتیب دیا ہے۔ ڈیٹا فریم کی تمام قدریں بھی 'NaN' میں تبدیل ہو جاتی ہیں کیونکہ دونوں اشاریہ کی قدریں مختلف ہیں۔

مثال نمبر 04

ہم فی الحال کالموں کی 'Programming_df's' انڈیکس ویلیو کو تبدیل کر رہے ہیں، جسے ہم نے پہلے مثال 3 میں تیار کیا تھا۔ ہم 'کالم' متغیر رکھتے ہیں اور اس میں نئی ​​قدریں داخل کرتے ہیں۔ 'P_Code, P_Languages, Hours, and New' کو 'کالم' متغیر میں شامل کیا جاتا ہے۔ اس کے بعد، ہم دوبارہ 'ری انڈیکس()' طریقہ استعمال کرتے ہیں جس میں ہم 'کالم' متغیر سیٹ کرتے ہیں، جو پچھلے کالم انڈیکس ویلیوز کو اپ ڈیٹ کرے گا اور ان نئی کالم انڈیکس ویلیوز کو ڈیٹا فریم میں شامل کرے گا۔

یہاں، آپ نوٹ کر سکتے ہیں کہ ہم نے 'کالم' میں جو نئی قدریں شامل کی ہیں وہ وہی ہیں جو ہم نے اوپر ڈیٹا فریم میں شامل کی ہیں، لیکن ترتیب مختلف ہے، اس لیے یہ کالموں کی ترتیب کو تبدیل کر دے گا اور تمام کالموں کو ایڈجسٹ کر دے گا۔ 'کالم' متغیر میں ذکر کیا گیا ہے۔ اس کے علاوہ، ہم ایک اور انڈیکس ویلیو شامل کرتے ہیں جو اوپر ڈیٹا فریم میں موجود نہیں ہے، جو کہ یہاں 'نیا' ہے، لہذا 'NaN' کی قدریں اس کالم میں ظاہر ہوں گی۔


کالموں کی ترتیب کو یہاں تبدیل کر دیا گیا ہے، اور تمام قدریں ظاہر ہوتی ہیں کیونکہ یہ اصل ڈیٹا فریم کے کالموں میں موجود ہوتی ہیں اور اپ ڈیٹ کردہ ڈیٹا فریم میں 'نیا' کالم تمام 'NaN' اقدار پر مشتمل ہوتا ہے کیونکہ یہ کالم اصل ڈیٹا فریم میں موجود نہیں ہوتا ہے۔

نتیجہ

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