quantilesExactWeightedInterpolated
استُحدثت في: v24.10.0
تحسب هذه الدالة عدة كوانتايل لسلسلة بيانات رقمية باستخدام الاستيفاء الخطي عند مستويات مختلفة في آنٍ واحد، مع مراعاة وزن كل عنصر.
تكافئ هذه الدالة quantileExactWeightedInterpolated، لكنها تتيح حساب عدة مستويات للكوانتايل في تمريرة واحدة، ما يجعلها أكثر كفاءة من استدعاء دوال الكوانتايل بشكل منفصل.
الصيغة
quantilesExactWeightedInterpolated(level1, level2, ...)(expr, weight)المعلمات
level— مستويات الكوانتايل. عدد ثابت واحد أو أكثر من الأعداد ذات الفاصلة العائمة من 0 إلى 1. نوصي باستخدام قيمlevelضمن النطاق[0.01, 0.99].Float*
الوسائط
expr— تعبير على قيم العمود ينتج عنه أنواع بيانات رقمية، أوDateأوDateTimeأوDateTime64.(U)Int*أوInt128أوUInt128أوInt256أوUInt256أوFloat*أوDecimal*أوDateأوDateTimeأوDateTime64weight— عمود يحتوي على أوزان عناصر التسلسل. الوزن هو عدد مرات تكرار القيمة.UInt*
القيمة المعادة
مصفوفة من قيم الكوانتايل للمستويات المحددة، وبالترتيب نفسه الذي حُددت به هذه المستويات. تُرجع الوسائط الرقمية Float64، بينما تحتفظ وسائط Decimal وDate وDateTime وDateTime64 بتنسيق الإدخال الخاص بها. Array(Float64) أو Array(Decimal*) أو Array(Date) أو Array(DateTime) أو Array(DateTime64)
أمثلة
حساب عدة قيم كوانتايل دقيقة موزونة وبالاستيفاء
SELECT quantilesExactWeightedInterpolated(0.25, 0.5, 0.75)(number, 1) FROM numbers(10)┌─quantilesExactWeightedInterpolated(0.25, 0.5, 0.75)(number, 1)─┐
│ [2.25,4.5,6.75] │
└────────────────────────────────────────────────────────────────┘