المئين مع القيم المفقودة يتطلب قرارا واضحا بشأن الغياب. قد نعثر على دالة تتجاهل NaN، ثم نصف العملية خطأ بأنها عوضت البيانات. نؤلف ثلاثة أعداد ومكانا مفقودا، ونقارن التجاهل بإضافة بديل معلن، لنعرف كيف يتغير العدد والترتيب في الحساب.
الخلاصة السريعة
لا؛ تجاهل NaN يستبعدها من حساب المئين، بينما التعويض يضيف قيمة إلى القائمة. قد تختلف النتيجتان حتى مع تثبيت المئين وطريقة الاستيفاء.
- تحسب nanpercentile المئين مع تجاهل NaN؛ نثبت المئين 75 والطريقة linear الافتراضية، ولا نختار قيمة بديلة من هذا السلوك وحده. [1]
- في القائمة المؤلفة 3 و 7 و 11 وNaN، يبقى بعد التجاهل ثلاثة أعداد. عند موضع 1.5 بين 7 و 11 ، يعطي الاستيفاء الخطي 9.
- إذا عوضنا الغياب بالقيمة 7 باختيار معلن، تصبح القائمة المرتبة 3 و 7 و 7 و 11. موضع المئين 2.25 ، والاستيفاء بين 7 و 11 يعطي 8 ، مع عدد 4.
- 9 و 8 ملخصان لمدخلين مختلفين؛ لا تكشف أي منهما القيمة المفقودة الأصلية. نكتب قرار الغياب والعدد الفعلي وطريقة الحساب، ولم ننفذ دالة أو نختبر نموذجا.
ماذا تعني عبارة تجاهل NaN هنا؟
توثق NumPy أن nanpercentile تحسب المئين مع تجاهل NaN، وأن الطريقة الافتراضية linear. [1]
نعلن مدخل تمريننا:3 و 7 و 11 وموضع NaN واحد. لا توجد فيه قيم لا نهائية، ولا قائمة خالية من الأعداد. نستخدم NaN علامة لهذا الموضع المفقود، ولا نفترض أن كل استعمال للعلامة في كل نظام يعني فقد القياس بالطريقة نفسها.
التجاهل يعني أن المثال سيحسب على الأعداد الثلاثة الباقية. لم نضف صفا جديدا، ولم نكتب 7 في مكان الغياب، ولم نستعد قراءة أصلية من ملف آخر. عدد المدخلات الصالحة للحساب جزء من وصف النتيجة.
كيف يصل حساب التجاهل إلى 9 ؟
في الاستيفاء الخطي، يعتمد الموضع على q مضروبا في عدد القيم ناقص واحد، ثم يمزج القيمتين المجاورتين بحسب الجزء الكسري. [2]
المئين 75 يقابل q=0.75. بعد التجاهل يكون العدد 3 ، والموضع 0.75 مضروبا في 2 ، أي 1.5 ، مع فهرسة تبدأ من صفر. العنصر عند الموضع 1 هو 7 ، والذي يليه 11.
الجزء الكسري نصف؛ نأخذ نصف 7 ونصف 11 ، فيكون الناتج 9. ليست 9 قيمة مرصودة جديدة في القائمة؛ إنها نتيجة الاستيفاء بين عددين معلنين في هذا التمرين.
كيف يغير التعويض القائمة والموضع؟
نختار في مقارنة أخرى أن نكتب 7 مكان الغياب، دون الادعاء أنها القياس الحقيقي. تصبح القائمة المرتبة 3 و 7 و 7 و 11 ، ويصير العدد 4. لا نسمي هذا الفرع تجاهلا؛ لقد أضفنا قيمة للحساب.
الموضع الآن 0.75 مضروبا في 3 ، أي 2.25. العنصر عند الموضع 2 هو 7 ، والذي يليه 11. نأخذ ثلاثة أرباع 7 وربع 11 ، فيكون الناتج 8. تغير وزن الاستيفاء لأن طول القائمة تغير.
| القرار المعلن | القيم المستخدمة | العدد | الموضع من صفر | مئين 75 الخطي |
|---|---|---|---|---|
| تجاهل NaN | 3 و 7 و 11 | 3 | 1.5 | 9 |
| تعويض معلن بالقيمة 7 | 3 و 7 و 7 و 11 | 4 | 2.25 | 8 |
ما الذي تخبرنا به المقارنة عن الغياب؟
النتيجتان تصفان قرارين مختلفين، ولا تفصلان أيهما أقرب إلى قيمة مفقودة لم نعرفها. لا نستنتج أن التجاهل عالج سبب الغياب أو أن التعويض جعل البيانات مكتملة من حيث المعرفة.
نقترح أن يسجل تقرير الميزة عدد المواضع المفقودة، وعدد الأعداد التي دخلت الحساب، وما إذا أضيف بديل، وقيمته وطريقة اختياره. ويذكر كذلك المئين وطريقة الاستيفاء، حتى يستطيع المراجع إعادة الحساب من المدخلات المعلنة.
لم ننفذ NumPy ولم نقس أثر القرار في نموذج. المقارنة تثبت فقط اختلاف حسابين يدويين محددين؛ لا تقدم قاعدة تعويض لكل مجموعة بيانات أو ضمانا لتوزيع مجتمع.
المصادر ومتابعة القراءة
أُعدّ هذا المقال بصياغة عربية أصلية بالاستناد إلى المصادر أعلاه، وهو مدخل تمهيدي إلى الموضوع. اقرأ منهجية المحتوى وحدوده.
