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


1. تحديد قيم "نان".
الخطوة الأولى في التعامل مع قيم "nan" هي التعرف عليها. في Python، إذا كنت تستخدم مكتبات مثل Pandas، فالأمر سهل للغاية. يمكنك استخداملاغية ()أويكون()طُرق. على سبيل المثال:
استيراد الباندا كـ pd import numpy as np data = {'col1': [1, 2, np.nan, 4], 'col2': [5, np.nan, 7, 8]} df = pd.DataFrame(data) nan_mask = df.isnull() print(nan_mask)
سيقوم هذا الرمز بإنشاء DataFrame مع بعض قيم "nan" ثم إنشاء قناع منطقي يوضح مكان وجود قيم "nan".
2. إزالة قيم "نان".
إحدى أبسط الطرق للتعامل مع قيم "nan" هي إزالتها فقط. في الباندا، يمكنك استخداميسقط()طريقة.
clean_df = df.dropna() طباعة (clean_df)
سيؤدي هذا إلى إزالة أي صفوف تحتوي على قيم "nan". ومع ذلك، فإن هذا النهج له عيوبه. إذا كان لديك الكثير من قيم "nan"، فقد ينتهي بك الأمر إلى فقدان كمية كبيرة من البيانات. وإذا لم يتم توزيع قيم "nan" بشكل عشوائي، فيمكنك إدخال التحيز في مجموعة البيانات الخاصة بك.
3. قيم اللوحة "نان".
يعد الإسناد طريقة أكثر تعقيدًا للتعامل مع قيم "nan". بدلاً من إزالة نقاط البيانات بقيم "nan"، يمكنك استبدالها بالقيم المقدرة.
يعني/الوسيط/وضع الإسناد
بالنسبة للأعمدة الرقمية، يمكنك استبدال قيم "nan" بالمتوسط أو الوسيط أو الوضع الخاص بالعمود.
mean_col1 = df['col1'].mean() df['col1'] = df['col1'].fillna(mean_col1)
يستبدل هذا الرمز قيم "nan" في العمود "col1" بمتوسط ذلك العمود. يعد حساب المتوسط سريعًا وسهلاً، ولكنه يمكن أن يقلل التباين في بياناتك. يعد احتساب الوسيط خيارًا أفضل إذا كانت بياناتك تحتوي على قيم متطرفة، حيث يكون الوسيط أقل تأثراً بالقيم المتطرفة.
بالنسبة للأعمدة الفئوية، يمكنك استخدام الوضع (القيمة الأكثر شيوعًا).
mode_col2 = df['col2'].mode()[0] df['col2'] = df['col2'].fillna(mode_col2)
الاستيفاء
يعد الاستيفاء طريقة أخرى لحساب قيم "nan"، خاصة بالنسبة لبيانات السلاسل الزمنية. الباندا يوفرأقحم()طريقة.
df = pd.DataFrame({'value': [1, np.nan, 3, 4, np.nan, 6]}) df['value'] = df['value'].interpolate() print(df)
تقوم هذه الطريقة بتقدير القيم المفقودة بناءً على قيم نقاط البيانات المجاورة.
4. استخدام التقنيات المتقدمة
هناك أيضًا تقنيات أكثر تقدمًا للتعامل مع قيم "nan"، مثل استخدام خوارزميات التعلم الآلي للتنبؤ بالقيم المفقودة. على سبيل المثال، يمكنك استخدام شجرة قرارات أو غابة عشوائية للتنبؤ بقيم "nan" استنادًا إلى الميزات الأخرى في مجموعة البيانات الخاصة بك.
منتجاتنا ومدى ملاءمتها
كمورد نان، أعلم أن الحصول على بيانات نظيفة وموثوقة أمر بالغ الأهمية لاتخاذ قرارات مستنيرة. ولهذا السبب تم تصميم منتجاتنا للعمل بسلاسة مع مسارات المعالجة المسبقة لبياناتك. سواء كنت تعمل في مشروع صغير الحجم أو تطبيق مؤسسي واسع النطاق، يمكن أن تساعدك منتجات nan الخاصة بنا في التعامل مع قيم "nan" بشكل أكثر كفاءة.
وبالحديث عن المنتجات ذات الصلة، فإننا نقدم أيضًا بعض أجهزة XPON ONU الرائعة. تحقق من هذه المنتجات الرائعة:
- ذا لوندز 4GE VOIP CATV WIFI5 AC1200
- XPON ONU 4GE 1POTS WiFi6 AX3000 CATV USB3.0
- GPON ONU 4GE VOIP AC WIFI CATV USB2.0
تم تصميم هذه الأجهزة لتوفير اتصال موثوق وعالي السرعة، وهو أمر ضروري لجمع البيانات وتحليلها.
تواصل معنا للشراء
إذا كنت مهتمًا بمنتجات nan الخاصة بنا أو أي من أجهزة XPON ONU، فنحن نحب أن نسمع منك. سواء كانت لديك أسئلة حول منتجاتنا، أو كنت بحاجة إلى عرض أسعار، أو كنت ترغب في مناقشة حل مخصص، فلا تتردد في التواصل معنا. نحن هنا لمساعدتك في تحقيق أقصى استفادة من بياناتك والتأكد من أن مسارات المعالجة المسبقة لبياناتك تعمل بسلاسة.
مراجع
- فاندر بلاس، ج. (2016). دليل علوم بيانات بايثون: الأدوات الأساسية للعمل مع البيانات. أورايلي وسائل الإعلام.
- ماكيني، دبليو (2012). بايثون لتحليل البيانات: جدل البيانات مع Pandas، NumPy، وIPython. أورايلي وسائل الإعلام.
