Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

quantileBFloat16

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 — تعبير على قيم العمود يُرجِع أنواع بيانات رقمية أو Date أو DateTime. (U)Int* أو Float* أو Date أو DateTime

القيمة المعادة

الكوانتايل التقريبي للمستوى المحدد. بالنسبة إلى مُدخلات Date وDateTime، يتطابق تنسيق الإخراج مع تنسيق الإدخال. Float64 أو Date أو DateTime

أمثلة

حساب الكوانتايل باستخدام bfloat16

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;
┌─quantileBFloat16(0.75)(a)─┬─quantileBFloat16(0.75)(b)─┐
│                         3 │                         1 │
└───────────────────────────┴───────────────────────────┘

راجع أيضًا

Navigation