quantilesExactExclusive
أُضيفت في: v20.1.0
تحسب هذه الدالة بدقة عدة مئينات لتسلسل من البيانات الرقمية عند مستويات مختلفة في الوقت نفسه، باستخدام الطريقة الاستبعادية.
هذه الدالة مكافئة لـ quantileExactExclusive، لكنها تتيح حساب عدة مستويات مئينية في مرور واحد، ما يجعلها أكثر كفاءة من استدعاء دوال مئينات منفصلة.
تستخدم هذه الدالة الطريقة الاستبعادية لحساب المئينات، كما هو موضح في طريقة R-6. وهذا يكافئ الدالة PERCENTILE.EXC في Excel.
للحصول على قيم دقيقة، تُجمَع جميع القيم المُمرَّرة في مصفوفة، ثم تُرتَّب جزئيًا.
يبلغ تعقيد خوارزمية الفرز O(N·log(N)) من المقارنات، حيث إن N = std::distance(first, last).
البنية
quantilesExactExclusive(level1, level2, ...)(expr)المعلمات
level— مستويات المئينات. أعداد ثابتة ذات فاصلة عائمة من 0 إلى 1 (حصريًا). نوصي باستخدام قيمlevelضمن النطاق(0.01, 0.99).Float*
الوسائط
expr— تعبير على قيم العمود ينتج أنواع بيانات رقمية أوDateأوDateTime.(U)Int*أوFloat*أوDateأوDateTime
القيمة المعادة
مصفوفة من المئينات للمستويات المحددة، وبالترتيب نفسه الذي حُدِّدت به المستويات. Array(Float64)
أمثلة
حساب عدة مئينات دقيقة حصرية
CREATE TABLE num AS numbers(1000);
SELECT quantilesExactExclusive(0.25, 0.5, 0.75, 0.9, 0.95, 0.99, 0.999)(number) FROM num;┌─quantilesExactExclusive(0.25, 0.5, 0.75, 0.9, 0.95, 0.99, 0.999)(number)─┐
│ [249.25,499.5,749.75,899.9,949.9499999999999,989.99,998.999] │
└──────────────────────────────────────────────────────────────────────────┘