quantileBFloat16
quantileBFloat16
bfloat16 숫자로 이루어진 표본의 근사 분위수를 계산하는 집계 함수예요. v21.7.0부터 도입되었어요.
출처: 문서
본문
bfloat16 숫자로 이루어진 표본의 근사 분위수를 계산해요. bfloat16은 부호 비트 1개, 지수 비트 8개, 가수 비트 7개로 이루어진 부동소수점 데이터 타입이에요. 이 함수는 입력 값을 32비트 부동소수점으로 변환하고 가장 중요한 16비트를 취해요. 그런 다음 bfloat16 분위수 값을 계산하고, 결과를 제로 비트를 덧붙여 64비트 부동소수점으로 변환해요. 이 함수는 최대 상대 오차 0.78125%(평균 상대 오차 약 0.27%)를 갖는 빠른 분위수 추정기이며, 이는 bfloat16의 7비트 가수 정밀도에 해당해요.
구문 (Syntax)
quantileBFloat16[(level)](expr)
별칭(Aliases): medianBFloat16
파라미터 (Parameters)
level— 선택사항이에요. 분위수의 수준이에요. 가능한 값은 0부터 1까지의 범위예요. 기본값:0.5.Float*
인자 (Arguments)
expr— 숫자 데이터 타입,Date또는DateTime를 결과로 내는 컬럼 값에 대한 표현식이에요.(U)Int*또는Float*또는Date또는DateTime
반환 값 (Returned value)
지정된 수준의 근사 분위수예요. Date와 DateTime 입력의 경우 출력 형식이 입력 형식과 일치해요. Float64 또는 Date 또는 DateTime
예시 (Examples)
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 │
└───────────────────────────┴───────────────────────────┘
참고 (See Also)
- median
- quantiles