الانتقال إلى المحتوى الرئيسي

quantileBFloat16

أُضيفت في: v21.7.0 تحسب كوانتايل تقريبيًا لعيّنة تتكوّن من أعداد bfloat16. bfloat16 هو نوع بيانات بفاصلة عائمة يحتوي على 1 بت للإشارة، و8 بتات للأس، و7 بتات للكسر. تُحوِّل الدالة قيم الإدخال إلى أعداد بفاصلة عائمة من 32 بت، ثم تأخذ أعلى 16 بت أهمية. بعد ذلك تحسب قيمة الكوانتايل لـ bfloat16 وتحوِّل النتيجة إلى عدد بفاصلة عائمة من 64 بت بإلحاق بتات صفرية. الدالة مُقدِّر سريع للكوانتايل، بحد أقصى للخطأ النسبي يبلغ 0.78125% (ومتوسط خطأ نسبي يبلغ تقريبًا 0.27%)، بما يتوافق مع دقة المانتيسا البالغة 7 بتات في bfloat16. الصيغة
quantileBFloat16[(level)](expr)
الأسماء البديلة: medianBFloat16 المعاملات
  • level — اختياري. مستوى الكوانتايل. القيم الممكنة تقع ضمن النطاق من 0 إلى 1. القيمة الافتراضية: 0.5. Float*
الوسيطات
  • expr — عمود يحتوي على بيانات رقمية. (U)Int* أو Float*
القيمة المعادة الكوانتايل التقريبي للمستوى المحدد. Float64 أمثلة حساب الكوانتايل باستخدام bfloat16
Query
CREATE TABLE example_table (a UInt32, b Float32) ENGINE = Memory;
INSERT INTO example_table VALUES (1, 1.001), (2, 1.002), (3, 1.003), (4, 1.004);

SELECT quantileBFloat16(0.75)(a), quantileBFloat16(0.75)(b) FROM example_table;
Response
┌─quantileBFloat16(0.75)(a)─┬─quantileBFloat16(0.75)(b)─┐
│                         3 │                         1 │
└───────────────────────────┴───────────────────────────┘
راجع أيضًا
آخر تعديل في ٢٥ يونيو ٢٠٢٦