quantilesExactWeighted
도입 버전: v1.1.0
각 요소의 가중치를 고려하여, 서로 다른 수준에서 숫자 데이터 시퀀스의 여러 분위수를 동시에 정확하게 계산합니다.
이 함수는 quantileExactWeighted와 동일하지만, 여러 분위수 수준을 단일 패스로 계산할 수 있어 개별 분위수 함수를 각각 호출하는 것보다 더 효율적입니다.
구문
quantilesExactWeighted(level1, level2, ...)(expr, weight)매개변수
level— 분위수 수준입니다. 0과 1 사이의 하나 이상의 상수 부동소수점 수입니다.level값은[0.01, 0.99]범위에서 사용하는 것을 권장합니다.Float*
인수
expr— 컬럼 값에 적용되는 표현식이며, 결과는 숫자 데이터 타입,Date,DateTime또는DateTime64입니다.(U)Int*orInt128orUInt128orInt256orUInt256orFloat*orDecimal*orDateorDateTimeorDateTime64weight— 시퀀스 구성원의 가중치를 담은 컬럼입니다. 가중치는 값의 출현 횟수를 나타내는 숫자입니다.UInt*
반환 값
지정된 수준의 분위수를, 수준이 지정된 순서와 동일한 순서로 담은 배열입니다. 숫자 데이터 타입의 경우 출력 형식은 입력 형식과 일치합니다. Array((U)Int*) or Array(Int128) or Array(UInt128) or Array(Int256) or Array(UInt256) or Array(Float*) or Array(Decimal*) or Array(Date) or Array(DateTime) or Array(DateTime64)
예시
여러 개의 정확한 가중 분위수 계산
SELECT quantilesExactWeighted(0.25, 0.5, 0.75)(number, 1) FROM numbers(10)┌─quantilesExactWeighted(0.25, 0.5, 0.75)(number, 1)─┐
│ [2,4,7] │
└────────────────────────────────────────────────────┘