يستغرق تنظيف البيانات بلا شك الكثير من الوقت في علم البيانات ، وتعد البيانات المفقودة أحد التحديات التي ستواجهها كثيرًا. الباندا هي أداة قيمة لمعالجة بيانات Python تساعدك على إصلاح القيم المفقودة في مجموعة البيانات الخاصة بك ، من بين أشياء أخرى.
يمكنك إصلاح البيانات المفقودة إما بإسقاطها أو ملؤها بقيم أخرى. في هذه المقالة ، سنشرح ونستكشف الطرق المختلفة لملء البيانات المفقودة باستخدام الباندا.
1. استخدم طريقة fillna ():
ال فيلنا () تتكرر الدالة من خلال مجموعة البيانات الخاصة بك وتملأ جميع الصفوف الخالية بقيمة محددة. يقبل بعض الحجج الاختيارية - لاحظ ما يلي:
قيمة: هذه هي القيمة التي تريد إدراجها في الصفوف المفقودة.
طريقة: يتيح لك تعبئة القيم المفقودة للأمام أو للخلف. يقبل أ "بيل" أو "ملء" معامل.
في المكان: هذا يقبل البيان الشرطي. إذا كان صحيحًا ، فإنه يعدل DataFrame بشكل دائم. خلاف ذلك ، لا.
قبل أن نبدأ ، تأكد من تثبيت الباندا في ملف بيئة بايثون الافتراضية استخدام نقطة في محطتك:
نقطة تثبيت الباندا
بعد ذلك ، داخل نص Python النصي ، سننشئ إطارًا تدريبيًا DataFrame ونقوم بإدراج قيم فارغة (نان) في بعض الصفوف:
استيراد الباندا
مد = الباندا. DataFrame ({'A': [0، 3، بلا، 10، 3، بلا]،
"ب": [لا شيء ، 7.13 ، 13.82 ، 7 ، 7] ،
'C': [لا شيء ، "Pandas" ، لا شيء ، "Pandas" ، "Python" ، "JavaScript"]})
متعلق ب:كيفية استيراد بيانات Excel إلى نصوص Python باستخدام Pandas
الآن ، تحقق من كيفية ملء هذه القيم المفقودة باستخدام الطرق المختلفة المتاحة في الباندا.
تتضمن هذه الطريقة استبدال القيم المفقودة بمتوسطات محسوبة. يمكن تطبيق تعبئة البيانات المفقودة بمتوسط أو قيمة متوسطة عندما تحتوي الأعمدة المعنية على عدد صحيح أو أنواع بيانات عائمة.
يمكنك أيضًا ملء البيانات المفقودة بقيمة الوضع ، وهي القيمة الأكثر حدوثًا. هذا ينطبق أيضا على الأعداد الصحيحة أو العائمة. ولكنه يكون أسهل عندما تحتوي الأعمدة المعنية على سلاسل.
فيما يلي كيفية إدراج المتوسط والوسيط في الصفوف المفقودة في DataFrame الذي قمت بإنشائه مسبقًا:
# لإدراج القيمة المتوسطة لكل عمود في صفوفه المفقودة:
df.fillna (df.mean (). round (1) ، inplace = True)
# للوسيط:
df.fillna (df.median (). round (1) ، inplace = True)
طباعة (مدافع)
لا يؤدي إدخال القيمة المشروطة كما فعلت للمتوسط والوسيط أعلاه إلى التقاط DataFrame بالكامل. ولكن يمكنك إدراجه في عمود معين بدلاً من ذلك ، على سبيل المثال ، العمود ج:
df ['C']. fillna (df ['C']. mode () [0]، inplace = True)
مع ذلك ، لا يزال من الممكن إدراج القيمة المشروطة لكل عمود عبر الصفوف المفقودة مرة واحدة باستخدام حلقة for:
بالنسبة لي في أعمدة df:
df [i] .fillna (df [i] .mode () [0]، inplace = True)
طباعة (مدافع)
إذا كنت تريد أن تكون خاصًا بعمود معين أثناء إدراج المتوسط أو الوسيط أو الوضع:
df.fillna ({"A": df ['A']. يعني ()،
"B": df ['B']. median ()،
"C": وضع df ['C']. () [0]} ،
inplace = صحيح)
طباعة (مدافع)
قم بتعبئة الصفوف الخالية بالقيم باستخدام ffill
يتضمن ذلك تحديد طريقة التعبئة بالداخل باسم فيلنا () وظيفة. تملأ هذه الطريقة كل صف مفقود بقيمة أقرب واحد فوقه.
يمكنك أيضًا تسميتها إعادة توجيه:
df.fillna (الطريقة = 'ffill' ، inplace = True)
املأ الصفوف المفقودة بالقيم باستخدام bfill
هنا ، ستحل محل ملف يملأ الطريقة المذكورة أعلاه مع بفل. يملأ كل صف مفقود في DataFrame بأقرب قيمة تحته.
هذا يسمى الملء العكسي:
df.fillna (الطريقة = 'bfill' ، inplace = True)
2. طريقة الاستبدال ()
يمكنك استبدال ملف نان القيم الموجودة في عمود محدد بالمتوسط أو الوسيط أو الوضع أو أي قيمة أخرى.
متعلق ب:أوامر الباندا لمعالجة إطارات البيانات
تعرف على كيفية عمل ذلك عن طريق استبدال الصفوف الخالية في عمود مسمى بالمتوسط أو الوسيط أو الوضع:
استيراد الباندا
استيراد numpy # هذا يتطلب منك تثبيت numpy مسبقًا
# استبدل القيم الخالية بالمتوسط:
df ['A']. استبدل ([numpy.nan]، df [A] .mean ()، inplace = True)
# استبدل العمود A بالمتوسط:
df ['B']. استبدل ([numpy.nan]، df [B] .median ()، inplace = True)
# استخدم القيمة المشروطة للعمود C:
df ['C']. استبدل ([numpy.nan]، df ['C']. mode () [0]، inplace = True)
طباعة (مدافع)
3. ملء البيانات الناقصة مع الإقحام ()
ال تحقق() تستخدم الدالة القيم الموجودة في DataFrame لتقدير الصفوف المفقودة.
قم بتشغيل التعليمات البرمجية التالية لمعرفة كيفية عمل ذلك:
#Interpolate للخلف عبر العمود:
df.interpolate (الطريقة = 'خطي' ، limit_direction = 'backward' ، inplace = True)
#Interpolate بالترتيب الأمامي عبر العمود:
df.interpolate (الطريقة = 'الخطية' ، Limit_direction = 'forward' ، inplace = True)
تعامل مع الصفوف المفقودة بعناية
بينما نظرنا فقط في ملء البيانات المفقودة بالقيم الافتراضية مثل المتوسطات والوضع والطرق الأخرى ، توجد تقنيات أخرى لإصلاح القيم المفقودة. علماء البيانات ، على سبيل المثال ، يزيلون أحيانًا هذه الصفوف المفقودة ، اعتمادًا على الحالة.
علاوة على ذلك ، من الضروري التفكير بشكل نقدي في استراتيجيتك قبل استخدامها. وإلا ، فقد تحصل على نتائج تحليلات أو تنبؤات غير مرغوب فيها. قد تساعد بعض استراتيجيات تصور البيانات الأولية.
عرض البيانات الخاصة بك مع الرسوم البيانية Jupyter Notebook.
اقرأ التالي
- برمجة
- بايثون
- برمجة
- قاعدة البيانات

إن Idowu شغوف بأي شيء يتعلق بالتقنيات الذكية والإنتاجية. في أوقات فراغه ، يلعب بالبرمجة ويتحول إلى رقعة الشطرنج عندما يشعر بالملل ، لكنه أيضًا يحب الابتعاد عن الروتين بين الحين والآخر. يحفزه شغفه بإظهار طريقة حول التكنولوجيا الحديثة للناس على كتابة المزيد.
اشترك في نشرتنا الإخبارية
انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!
انقر هنا للاشتراك