quantilesTDigestWeighted
quantileTDigestWeighted와 동일하지만, 단일 패스로 여러 분위수 수준을 계산할 수 있으므로 개별 분위수 함수를 각각 호출하는 것보다 더 효율적입니다.
최대 오류는 1%입니다. 메모리 사용량은 log(n)이며, 여기서 n은 값의 개수입니다.
이 함수의 성능은 quantiles 또는 quantilesTiming보다 낮습니다.
State 크기 대비 정밀도 비율 측면에서는 이 함수가 quantiles보다 훨씬 우수합니다.
결과는 쿼리 실행 순서에 따라 달라지므로 비결정적입니다.
quantilesTDigestWeighted는 작은 데이터 집합에 사용하는 것을 권장하지 않으며, 상당한 오류가 발생할 수 있습니다.
이 경우에는 대신 quantilesTDigest 사용을 고려하십시오.level— 분위수 수준입니다. 0부터 1 사이의 상수 부동소수점 수를 1개 이상 지정합니다.level값은[0.01, 0.99]범위에서 사용하는 것을 권장합니다.Float*
expr— 컬럼 값에 대한 표현식으로, 결과는 숫자형 데이터 타입,Date또는DateTime이어야 합니다.(U)Int*또는Float*또는Date또는DateTimeweight— 시퀀스 원소의 가중치가 들어 있는 컬럼입니다. 가중치는 값이 나타나는 횟수를 의미합니다.UInt*
Date 및 DateTime 입력의 경우 출력 형식은 입력 형식과 일치합니다. Array(Float32) 또는 Array(Date) 또는 Array(DateTime)
예시
t-digest를 사용한 다중 가중 분위수 계산
Query
Response