في compress، القناع القصير يحد مجال الاختيار. [1]
حدد مجال القناع القصير
compress تختار الشرائح الموافقة لـTrue؛ القناع أحادي، ويقصر الاختيار بطوله إن قصر عن المحور. [1]
نؤلف A=[[8,-3,0,5],[2,16,11,-4],[9,7,0,13]]. نرقم الصفوف من صفر إلى اثنين والأعمدة من صفر إلى ثلاثة، ونقرأ أعداد الصف من اليسار إلى اليمين. هذه أعداد تعليمية بلا وحدة، وليست سجلات حقيقية.
نضع القناع [False,True]، وفيه قراران فقط. القرار الأول يخص الموضع 0 والثاني الموضع 1. لو كان المحور هو الصفوف، فلا يوجد في القناع قرار للصف ذي الفهرس 2. ولو كان الأعمدة، فلا يوجد قرار للعمودين 2 و3.
نفصل في ورقة مراجعتنا بين «False معلنة» و«لا قرار مكتوب». الأول موجود عند الموضع 0؛ الثاني يصف الذيل بعد نهاية القناع. كلاهما لا يظهر ضمن المختار هنا، لكن سجل القرارات الذي نملكه مختلف.
قد يكون القناع القصير مقصودًا لاختيار جزء أول من المصدر. أما إذا أردنا مراجعة كل الصفوف أو الأعمدة، فبطاقة من قرارين لا تثبت أن التغطية شاملة. نحدد الغرض قبل تسمية النتيجة تصفية لجميع البيانات.
قارن الصف بالعمود وبالقيمة المسطحة
المحور يحدد الشرائح؛ axis=None يعمل على المدخل المسطح. [1] ravel بترتيب C يغيّر فهرس المحور الأخير أسرع. [2]
على axis=0 نختار الصف 1 لأن القرار الثاني True. يحتوي [2,16,11,-4]، فيكون الشكل (1,4). لا يظهر الصف 2 في النتيجة، رغم أنه لم يتلق قرارًا في القناع المؤلف.
على axis=1 نختار العمود 1 عبر الصفوف الثلاثة. قيمه −3 و16 و7، بالشكل (3,1). وجود قيمة 16 في هذا العمود لا يعني أن القناع اختار الصف الثاني وحده؛ أخذنا قيمة من كل صف في العمود نفسه.
لإعلان معنى التسطيح صراحة، نكتب ravel(A,order="C") قبل الاختيار. ترتيب قائمتنا هو [8,-3,0,5,2,16,11,-4,9,7,0,13]. تطبيق القرارين عليها يختار −3 وحدها، بشكله (1,). نحسب هذا النموذج من القوائم، دون استدعاء NumPy.
إذن طول القناع واحد في المقارنات، لكنه يغطي صفين من ثلاثة، أو عمودين من أربعة، أو قيمتين من اثنتي عشرة. لا نسمّي نسب التغطية هذه نسبة جودة؛ إنها تعداد مواضع ممثلة في ورقتنا.
العنصر −3 يظهر في اختيار العمود وفي الاختيار المسطح، لكن الأول يشمل أيضًا 16 و7. توافق قيمة واحدة لا يثبت توافق المحور أو شكل النتيجة. نراجع مواضع المصدر مع الشكل كاملًا.
ميّز إكمال القناع من إكمال القرار
نجرب على محور الأعمدة تمديد [False,True] إلى [False,True,False,False]. كلاهما يختار العمود 1 بقيم −3 و16 و7. الفرق في بطاقة التغطية: القناع الكامل يكتب قرارًا لكل عمود، والقصير لا يكتب قرارًا للعمودين الأخيرين.
هذا تمديد مؤلف لأغراض المقارنة، وليس وصفًا بأن المكتبة تضيف False داخل سجل القناع. تساوي القيم المختارة لا يحول قرارًا غائبًا إلى قرار موثق، ولا يبين سبب غياب عمود من الناتج وحده.
إذا مددنا القناع بدلًا من ذلك إلى [False,True,True,True]، تصبح الصفوف المختارة [-3,0,5] و[16,11,-4] و[7,0,13] بالشكل (3,3). أدخلنا قرارَي إبقاء إضافيين، فتغير الاختيار.
نقلب القرارين المكتوبين في القناع القصير، فنحصل على [True,False]. يختار العمود الأول بقيم 8 و2 و9. جمع العمود الأول والثاني يغطي بداية الجدول فقط؛ العمودان 2 و3 لا ينتميان إلى أي من الاختيارين القصيرين.
أما مكمل القناع الكامل [False,True,False,False] فهو [True,False,True,True]. يختار الصفوف [8,0,5] و[2,11,-4] و[9,0,13]. يمكن وضعها مع العمود 1 في مواضعها الأصلية لاستعادة جدولنا، مع خريطة للأعمدة؛ الجمع بلا خريطة قد يغير ترتيبها.
إذن مكمل القرارات المكتوبة يغطّي المجال نفسه الذي كتبناها عليه. إذا كان هدفنا تقسيم الأعمدة الأربعة إلى مختار وغير مختار، نكتب أربعة قرارات أولًا ونحفظ فهرس كل عمود. عدم ظهور عمود في الاختيار القصير وحده لا يحدد قيمته.

راجع التغطية قبل تفسير الاختيار
نراجع أربع بيانات في بطاقة المثال: محور الاختيار، وطوله في المصدر، وطول القناع، وفهارس المواضع المختارة. للأعمدة نكتب 1 ثم 4 ثم 2 ثم الموضع 1. هذه أرقام ذات أدوار مختلفة، وليست أربع قيم بيانات.
إذا اقتضت مهمتنا قرارًا لكل عمود، فشرطنا التحريري هو تطابق طول القناع مع الأربعة قبل الاختيار. أما إن اقتضت اختيار البداية فقط، فنكتب أن المجال المغطى عمودان، ونترك حالة العمودين الآخرين معلنة بأنها خارج هذا القرار.
فحصنا 1794 حالة: أشكالًا من صف إلى ثلاثة ومن عمود إلى أربعة، مع قيم مختلفة أو أصفار أو أعداد صحيحة موقعة متكررة. لكل محور صفوف أو أعمدة جرّبنا جميع الأقنعة المنطقية غير الخالية حتى طول المحور؛ وللتسطيح الصريح اقتصرنا على أشكال لا تتجاوز ست خانات.
قارنّا اختيارًا يقرن القيم بالأقنعة، باختيار مستقل يجمع القيم من قاموس إحداثيات. راجعنا الشكل وعدد True والتمديد بـFalse والتمديد بـTrue وتقسيم البداية بمكملها وبقاء المصدر، إلى جانب سبع مقارنات خاصة بجدولنا.
نقصر المثال على قوائم مستطيلة ذات أطوال موجبة وقيم صحيحة، مع قناع منطقي غير خالٍ لا يتجاوز المحور. لم نشغل NumPy أو نفحص شرطًا أطول أو متعدد الأبعاد أو out أو الأنواع أو الذاكرة أو الزمن. صحة نموذجنا العددي لا تثبت أن قناعًا وصل من ملف حقيقي كامل أو مرتبط بالمحور الصحيح.
| المجال في مثالنا | طول المصدر | طول القناع | الاختيار والشكل |
|---|---|---|---|
| صفوف؛ axis=0 | 3 | 2 | [2,16,11,-4]؛ (1,4) |
| أعمدة؛ axis=1 | 4 | 2 | −3، 16، 7؛ (3,1) |
| تسطيح C صريح | 12 | 2 | −3 وحدها؛ (1,) |
للتوسع: الأبعاد والقطر والمنقول.
المراجع
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
